Javascript 我可以在angular 9应用程序中使用queryselector吗

Javascript 我可以在angular 9应用程序中使用queryselector吗,javascript,angular,typescript,Javascript,Angular,Typescript,QuerySelector是typescript或javascript的一部分。我可以在我的角度应用程序中使用它,而不是在角度应用程序中使用QuerySelector。为什么我要问,假设在这种情况下生成动态HTML,我想处理动态生成的HTML上的一些事件。 在这种情况下,querySelector非常容易。但是有些人告诉像Don这样的人不要使用quesrySelector,这不是好的做法。那么,如何处理这些问题呢 document.querySelector(".myclass&quo

QuerySelector是typescript或javascript的一部分。我可以在我的角度应用程序中使用它,而不是在角度应用程序中使用QuerySelector。为什么我要问,假设在这种情况下生成动态HTML,我想处理动态生成的HTML上的一些事件。 在这种情况下,querySelector非常容易。但是有些人告诉像Don这样的人不要使用quesrySelector,这不是好的做法。那么,如何处理这些问题呢

document.querySelector(".myclass");
document.querySelector("ul").querySelectorAll('li');

为了动态呈现内容,您可以使用结构指令,如
*ngIf

<div>
    <p *ngIf="displayElement; else showThis">Content</p>
    <ng-template #showThis>      
        else content
    </ng-template>
</div>

使用@ViewChild而不是querySelectorBecause管理DOM。您最终会指向不再存在的元素,因为Angular添加/删除它们的频率太高。是的,您可以这样做,但我们不推荐使用这种方法来动态生成HTML
<input #myname> // html

@ViewChild('myname') input; // add this in ClassComponent

ngAfterViewInit() {
  console.log(this.input.nativeElement.value); // Input will be available in this lifecycle
}