Update in 2017: ViewChild wird der beste Weg, um Dom-Element zugreifen.Angular2 + Typescript: Wie manipuliert man das DOM-Element?
Frage im Jahr 2016 veröffentlicht:
ich die folgenden zwei Methoden versucht haben, nur Methode 2 funktioniert. Aber ich möchte nicht den wiederholten Code: document.getElementById() in jeder Methode. Ich bevorzuge Methode 1, aber warum Methode 1 nicht funktioniert?
Gibt es bessere Möglichkeiten, DOM in Angular2 zu manipulieren?
Html-Datei:
<video id="movie" width="480px" autoplay>
<source src="img/movie.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
Methode 1:
...
class AppComponent {
videoElement = document.getElementById("movie");
playVideo() {
this.videoElement.play();
}
}
Methode 2:
...
class AppComponent {
playVideo() {
var videoElement = document.getElementById("movie");
videoElement.play();
}
}
, was Sie wollen ein sk? poste etwas mehr Code oder Plunkr wenn möglich. scheint die beiden Methoden, die Sie gepostet haben, das gleiche, oder? –
Ich weiß, dass es für Variablen gleich aussieht, aber tatsächlich gibt es für das DOM-Element einen Unterschied zwischen der Deklaration einer DOM-Elementvariablen innerhalb der Methode und der externen Methode. Es scheint sehr seltsam, aber ich bekomme diese Schlussfolgerung, nachdem die erste Methode fehlgeschlagen ist. –
Was sind die Schlussfolgerungen, die Sie bekommen haben? Gibt es einen großen Unterschied zwischen diesen beiden? Wenn ja, bitte als Antwort für andere hilfreich sein. –