Quando si definisce una classe in ES6, sarà disponibile in ambito globale, che si può prevenire con la nuova recinzione staffa ES6:Come utilizzare i moduli ES6 invece degli spazi dei nomi nell'ambito globale?
{
class Car {
constructor(make) {
this.make = make;
this.currentSpeed = 25;
}
getSpeed(){
console.log(this.make + ' is going ' + this.currentSpeed + ' mph.');
}
}
window.MYNAMESPACE.Car = Car;
}
ho più file js, ognuno con la propria definizione di classe, e io rendere le classi disponibili tramite MYNAMESPACE nell'ambito globale. Quindi la creazione di una nuova vettura da qualsiasi luogo si presenta come:
var myCar = new MYNAMESPACE.Car();
Come ho potuto utilizzare i moduli ES6 per questo? E 'anche possibile, o raccomandabile?
Grazie! Un semplice esempio può fare molto! Questi link tendono a sovraccaricare il povero lettore con gli esempi più elaborati del mondo :) – Kokodoko
A proposito, posso escludere le parentesi {} anonime all'inizio/alla fine di ogni classe? Qual è il modo migliore per avviare una app.js principale dopo window.onload? – Kokodoko
@Kokodo puoi lasciarli fuori. Per l'inning puoi includere un file js con