2017年更新: ViewChild將是訪問Dom元素的最佳方式。Angular2 + Typescript:如何操作DOM元素?
問題張貼在2016年
我曾嘗試以下兩種方法,只有方法2級的作品。但是我不想在每個方法中重複使用代碼:document.getElementById()。我更喜歡方法1,但爲什麼方法1不起作用?
有沒有更好的方法來操縱Angular2中的DOM?
.html文件:
<video id="movie" width="480px" autoplay>
<source src="img/movie.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
方法1:
...
class AppComponent {
videoElement = document.getElementById("movie");
playVideo() {
this.videoElement.play();
}
}
方法2:
...
class AppComponent {
playVideo() {
var videoElement = document.getElementById("movie");
videoElement.play();
}
}
要一個什麼sk?如果可能的話,張貼更多的代碼或plunkr。看起來你發佈的兩種方法都是一樣的嗎? –
我知道它對於變量看起來是一樣的,但實際上對於DOM元素來說,在方法內部聲明一個DOM元素變量和外部方法是有區別的。這似乎很奇怪,但在第一種方法失敗後我得出了這個結論。 –
你得到的結論是什麼?這兩者之間有什麼重大區別?如果是的話,提供答案可能對其他人有幫助。 –