次のようなことをする必要があります:
if (condition) {
import something from 'something';
}
// ...
if (something) {
something.doStuff();
}
上記のコードはコンパイルされず、 がスローされますSyntaxError: ... 'import' and 'export' may only appear at the top level
。
System.import
写真のように使ってみましたここ、どこから来たのかは分かりませんSystem
。結局受け入れられなかったES6の提案でしょうか?その記事の「プログラムAPI」へのリンクは、廃止されたドキュメントページ。
ベストアンサー1
現在、ECMAに動的インポートの提案があります。これはステージ3です。これは次のようにも利用できます。バベルプリセット。
以下は、ケースに応じて条件付きレンダリングを実行する方法です。
if (condition) {
import('something')
.then((something) => {
console.log(something.something);
});
}
これは基本的にプロミスを返します。プロミスの解決にはモジュールが必要です。提案には、複数の動的インポート、デフォルトインポート、jsファイルのインポートなどの他の機能もあります。詳細については、動的インポートはこちら。