javascript - Angular 我不使用 (load) 调用函数

标签 javascript html angular typescript

我希望该函数在 div 打开时起作用,但它不起作用。

html:

<div class="row table-dark table-bordered">
  <div class="col-xl-12" (click)="isCollapsed=!isCollapsed;">
     Click Me!
   <ng-container *ngIf="isCollapsed;">
   <div class="col-xl-12" (load)="test()" id="test"></div>
       Open
    </ng-container>
  </div>
</div>

功能

test() {
   console.log("is work");
   const firstRow = document.createElement('div');
   firstRow.innerText = 'Eureka';
   firstRow.style.color = 'red';
   document.getElementById('test').appendChild(firstRow);
}

实例: https://codesandbox.io/embed/focused-mendeleev-t7y4h?fontsize=14&hidenavigation=1&theme=dark

最佳答案

没有任何东西像 (load) Angular 。尝试一下

<div class="row table-dark table-bordered">
  <div class="col-xl-12" (click)="isCollapsed=!isCollapsed;">
     Click Me!   
  </div>
  <ng-container *ngIf="isCollapsed;">
    <div class="col-xl-12" (click)="test()" id="test">Open</div>
  </ng-container>
</div>

您的代码的问题是您有 (click)="isCollapsed=!isCollapsed;"超过父级div ,所以test()即使您更改 load 也不起作用至click 。所以我把它作为一个单独的 div 移出了。

Here is working demo .

关于javascript - Angular 我不使用 (load) 调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59599466/

相关文章:

javascript - jqplot 荧光笔工具提示文本重叠

javascript - ace-editor:如何防止某些标签被P包裹

javascript - 多个 Kendo 编辑器在 Chrome 上粘贴屏幕截图

javascript - 使用 JavaScript 访问框架的文档对象

html - 如何在 link_to 中包含 title 和 class 属性?

angular - 如何处理以 Angular react 形式的对象数组形式出现的响应

javascript - 如何测试我的网页的性能

html - 如何在 Gwt 的 Css 中的 FlowPanel 中的行之间留出空白?

IE11 上的 Angular 4 性能/CPU 使用率

javascript - Angular 6 如何在单击按钮后显示消息