相关疑难解决方法(0)

在 Angular 2+ 中进行 DOM 操作的正确方法

我知道有一些类似的问题,但没有人回答我的问题。

基本上,以角度操作 DOM 的正确方法是什么,说我有这个。

html

<button id="buy-now">BUY NOW</button>
Run Code Online (Sandbox Code Playgroud)

当你点击按钮时,我希望按钮变成紫色,所以在纯 javascript 中你会写一些类似的东西

javascript

changeColour() {
   const b = document.getElementById('buy-now');
   b.style.backgroundColor = 'purple';
}
Run Code Online (Sandbox Code Playgroud)

现在在 Angular 中我一直这样做,但最近注意到有人说这不正确?

以角度操作 DOM 的正确方法是什么,我将如何重写我的示例以反映这种更正的方式?

任何帮助,将不胜感激!

编辑

明确地说,我知道在 Angular 中我可以做到这一点

HTML

<button (click)="changeColour()" id="buy-now">BUY NOW</button>
Run Code Online (Sandbox Code Playgroud)

文件

changeColour() {
   const b = <HTMLElement>document.querySelector('#buy-now');
   b.style.backgroundColour = 'purple'
}
Run Code Online (Sandbox Code Playgroud)

但这是操纵 dom 的合适方法吗?

改变按钮颜色只是一个简单的例子,我的意思是对于任何类型的 DOM 操作

谢谢

javascript typescript angular

10
推荐指数
1
解决办法
6751
查看次数

标签 统计

angular ×1

javascript ×1

typescript ×1