Mit einer JavaScript ‚Klasse‘ Breaking up (nicht wirklich eine Klasse, ich weiß), dann ist es möglich, eine große Definition, indem sie Methoden in separaten Dateien, wie diese zu brechen:eine ES6 Klasse in mehrere Dateien
var Foo = function() {
console.log('initializing foo');
};
Foo.prototype.render = require('./render');
Aber mit ES6-Klassen sieht es so aus, als ob die Syntax diesen Ansatz ausschließt - es scheint, dass die Methoden immer als Funktionsliterale innerhalb des Klassenblocks geschrieben werden müssen.
I tried this im 6to5 REPL:
class Foo {
constructor() {
console.log('initializing foo');
}
require('./render');
}
... aber es Fehler.
Als Beispiel ermöglicht Coffeescript Klasse Syntax mir, dies zu tun:
class Foo
constructor: ->
console.log 'initializing foo'
render: require './render'
Gibt es wirklich keine Möglichkeit, dies mit ES6 Klassen zu tun?
Was über den Zugriff auf 'this' innerhalb dieser Methoden? –
@NathanH: was ist damit? Abgesehen von den Pfeilfunktionen hängt der Wert von "this" davon ab, wie eine Funktion * aufgerufen wird und nicht wie sie erstellt wurde. –
Danke Ich denke das war es, ich benutzte wahrscheinlich die Pfeilsyntax. –