Saya perlu melakukan sesuatu seperti:
if (condition) {
import something from 'something';
}
// ...
if (something) {
something.doStuff();
}
Kode di atas tidak dikompilasi; itu melempar SyntaxError: ... 'import' and 'export' may only appear at the top level.
Saya mencoba menggunakan System.importseperti yang ditunjukkan di sini , tetapi saya tidak tahu dari mana Systemasalnya. Apakah ini proposal ES6 yang akhirnya tidak diterima? Tautan ke "API terprogram" dari artikel itu mencampakkan saya ke laman dokumen yang tidak digunakan lagi .
package.json; saya gulpfilekemudian memeriksa apakah ketergantungan itu ada sebelum melakukan beberapa langkah membangun.
webpackdan babeluntuk transpile es6 ke es5. Proyek seperti webpack-rewiredan sejenisnya tidak membantu di sini - github.com/jhnns/rewire-webpack/issues/12 . Salah satu cara untuk menetapkan uji ganda ATAU untuk menghapus dependensi yang bermasalah bisa berupa impor bersyarat.
webpackdigunakan untuk mengubah stylesheet ke dalam modul yang memasukkan gaya yang relevan ke dalam DOM ketika mereka diimpor) tetapi modul juga perlu dijalankan di luar browser (misalnya untuk pengujian unit).