gpt4 book ai didi

javascript - 使用 @ViewChild 按类名选择元素?

转载 作者:行者123 更新时间:2023-12-02 23:30:13 25 4
gpt4 key购买 nike

在本文中Create Advanced Component作者首先创建一个指令来选择一个元素:

@Directive({
selector: '.tooltip-container'
})
export class TooltipContainerDirective {}

然后使用该指令选择包含类 .tooltip-container 的元素像这样:

    @Component({
template: `
<div class="tooltip-container" [ngStyle]="{top: top}">
<ng-content></ng-content>
</div>
`,
styles: [...]
})
export class TooltipComponent implements OnInit {
top : string;
@ViewChild(TooltipContainerDirective, { read: ElementRef }) private tooltipContainer;


}

Angular 是否能够选择tooltipContainer按类名元素而不使用指令?

最佳答案

嗨,我认为你的代码应该可以工作,...
顺便提一句。您可以像 CSS 选择器一样使用 ViewChild 选择器(因此 @ViewChild('.tooltip-container') 也应该可以工作(注意:@ViewChild 只会返回第一个结果)。
此外,您可以在任何 HTML 元素上使用 #myId,然后使用 @VievChild('myId')

选择子元素但我不认为这是你的问题,你是否可能尝试在 ngOnInit 中访问 ViewChild?,因为那行不通...... subview 将在渲染 View 时可用因此,您第一次访问子级是 ngAfterViewInit

关于javascript - 使用 @ViewChild 按类名选择元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56548063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com