Devo fare qualcosa del tipo:
if (condition) {
import something from 'something';
}
// ...
if (something) {
something.doStuff();
}
Il codice sopra non viene compilato; getta SyntaxError: ... 'import' and 'export' may only appear at the top level
.
Ho provato a usare System.import
come mostrato qui , ma non so da dove System
viene. È una proposta ES6 che non è stata accettata? Il link all '"API programmatica" di quell'articolo mi porta a una pagina di documenti obsoleti .
package.json
; my gulpfile
verifica quindi l'esistenza di tale dipendenza prima di eseguire alcuni passaggi di compilazione.
webpack
e babel
per traspilare es6 in es5. Progetti simili webpack-rewire
e simili non sono di aiuto qui - github.com/jhnns/rewire-webpack/issues/12 . Un modo per impostare il doppio del test O per rimuovere dipendenze problematiche potrebbe essere l'importazione condizionale.
webpack
viene utilizzato per convertire fogli di stile in moduli che inseriscono gli stili pertinenti nel DOM quando vengono importati) ma il modulo deve essere eseguito anche al di fuori del browser (ad es. Per test unitari).