如何以角度9发送(div.width)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何以角度9发送(div.width)相关的知识,希望对你有一定的参考价值。

我想将页面大小发送到TypeScript文件并在其中使用它。我该如何发送?

app.component.html

<div #divLeft >
  <button (click)="test(divLeft.width)">click</button>
</div>

app.component.ts:

test(e){
  console.log(e);
}

控制台:未定义

答案

您应该传递$event以在打字稿函数中获取事件,然后可以访问它的srcElementtarget等,以便您控制它的HTML和DOM Node] >

您可以得到offsetWidthclientWidth

HTML

<div #divLeft>
  <button (click)="test($event)">Click Me</button>
</div>

打字稿

test(e){
  console.log(event.target.offsetWidth);
}

您可以从此link中引用它们之间的区别

您可以使用ViewChild获取其引用并控制DOM

请参阅this post了解更多说明

更新

我刚刚意识到srcElement已被弃用,但我始终建议如下使用ViewChild

打字稿代码

@ViewChild("leftDiv", { static: true }) leftDiv: ElementRef;

test() {
   console.log(this.leftDiv.nativeElement.clientWidth)
  }

HTML

<div #leftDiv>
  <button (click)="test()">Click Me</button>
</div>

stakblitz

以上是关于如何以角度9发送(div.width)的主要内容,如果未能解决你的问题,请参考以下文章

这些角度电子邮件指令代码片段如何连接

如何以角度4在帖子正文中发送数据

如何将列表视图中的数据从一个片段发送到另一个片段

如何以角度发送卷曲请求

如何在 express/node js 中发送错误 http 响应?

超级有用的9个PHP代码片段