【问题标题】:Access DOM element outside of Angular root component访问 Angular 根组件之外的 DOM 元素
【发布时间】:2018-04-17 20:04:33
【问题描述】:

考虑一下这个 index.html:

<div id="test-case">
  Hello
  <button type="button">Press me</button>
</div>
<app> </app>

其中 approot component。是否可以从应用组件内部访问test-case 元素 并通过Angular 方法操作button click event?我可以使用 vanilla Javascript,但是有 Angular 的方法吗?

【问题讨论】:

    标签: angular


    【解决方案1】:

    你能得到的最好的就是这样的。不幸的是,我们仍然必须使用全局document.querySelector

    index.html

    <!doctype html>
    <html lang="en">
    
    <head>
      <meta charset="utf-8">
      <title>App</title>
      <base href="/">
    
      <meta name="viewport" content="width=device-width, initial-scale=1">
      <link rel="icon" type="image/x-icon" href="favicon.ico">
    </head>
    
    <body>
      <div id="hello">Hello</div>
      <pwpl-root></pwpl-root>
    </body>
    
    </html>
    

    app.component.ts

    import { Component, Renderer2 } from '@angular/core';
    
    @Component({
      selector: 'app',
      template: ``,
    })
    export class AppComponent {
      constructor(private renderer: Renderer2) {
        const hello = document.querySelector('#hello');
        this.renderer.listen(hello, 'click', console.log);
      }
    }
    

    【讨论】:

    • document.getElementById
    猜你喜欢
    • 1970-01-01
    • 2016-07-09
    • 2020-01-14
    • 1970-01-01
    • 2016-12-22
    • 2019-05-01
    • 2019-12-11
    • 2019-05-29
    • 1970-01-01
    相关资源
    最近更新 更多