class Event extends Immutable.Record {
constructor(text) {
super({text: text, timestamp: Date.now()});
}
}
Calling new Event()
sembra tornare una funzione constuctor:Come costruire sottoclassi di Immutable.Record?
new Event('started').toString()
"funzione di registrazione (valori) {if (valori instanceof RecordType) {return valori;}
if ((! questa istanza di RecordType)) {return new RecordType (values);}
if (! hasInitialized) {hasInitialized = true; var keys = Object .keys (defaultValues); SetProps (RecordTypePrototype, chiavi); RecordTypePrototype.size = keys.length; RecordTypePrototype._name = nome; RecordTypePrototype._keys = keys; RecordTypePrototype._defaultValues = defaultValues;}
this._map = Mappa (valori);} "
Mentre chiamando la funzione restituisce i risultati attesi:
new Event('started')().toString()
" Record { "testo": "avviato", "timestamp": 1453374580203} "
Cosa devo fare? sbagliato?
Questa è un'ottima risposta, ma vorrei poterlo fare in JS semplice, pronto per il browser (e, pronto per IE)! – rmosolgo
@mosolgo Puoi sempre traspondere il codice da ES6 ad alcuni vecchi gusti di javascript. Può f.ex. prova online repl di babel su https://babeljs.io/repl/ –
E se volessi ampliare ulteriormente la classe 'Event' avendo una versione più specifica? Qualcosa come un 'HttpEvent' che ha una proprietà URL o qualcosa del genere. Posso semplicemente estenderlo come normale? – jktravis