ES6-Klassen: Unerwartetes token im Skript?
Ich bin kopieren ein Beispiel versuchen zu lernen, ES6, aber ich bekomme einen kompilieren Fehler:
Unexpected token (2:5)
Scheint es, bezogen auf die Anzahl = 0;
Was mache ich falsch?
class Counter {
count = 0;
constructor() {
setInterval(function() {
this.tick();
}.bind(this), 1000);
}
tick() {
this.count ++;
console.log(this.count);
}
}
Ich glaube, Sie brauchen, um zu erklären, Ihre Variablen erste - so verwenden Sie
Möchten Sie vielleicht zu erwähnen, welche compiler du verwendest.
im mit gulp/elixir
let oder var scheint nicht zu beheben
Wo hast du das Beispiel aus? Das ist nicht ES6. Ich empfehle zu lernen, aus einer Quelle, die tatsächlich über ES6.
var
oder let
(vorzugsweise let
), damit javascript weiß, Sie sind zu deklarieren. Ansonsten ist die =
ist eigentlich ungültig, da es nicht zugeordnet werden kann.Möchten Sie vielleicht zu erwähnen, welche compiler du verwendest.
im mit gulp/elixir
let oder var scheint nicht zu beheben
Wo hast du das Beispiel aus? Das ist nicht ES6. Ich empfehle zu lernen, aus einer Quelle, die tatsächlich über ES6.
InformationsquelleAutor panthro | 2015-10-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
In ES2015, wenn mit der
class
syntax, müssen Sie Instanzvariablen definieren Sie entweder im Konstruktor oder eine der Methoden (es ist ein Vorschlag für die nächste iteration, ES2016, damit für Ihre syntax: ES-Klasse-Felder & Statische Eigenschaften)Check out the fiddle:
http://www.es6fiddle.net/ifjtvu5f/
InformationsquelleAutor nils
Vielleicht ist es das compiler-Problem. Überprüfen Sie, welche version von Babel, die Sie verwenden.
In meinem Fall habe ich die
babel-preset-stage-0
Abhängigkeit.InformationsquelleAutor imprfekt