我使用this GULP plugin將HTML文件轉換爲ES6導出,因此我可以在我的MVC中使用瀏覽器(使用rollup bundler)加載它們。ES6導入模塊作爲對象
基本上我有頁面控制器作爲模塊導出。
然後,在我的主要JS文件,我只是導入所有的頁面控制器,一旦一個,像這樣(簡化):
import * as page__home from './pages/page1';
import * as page__home from './pages/page2';
...
因爲這是一個SPA,我想它會更容易以某種方式將所有頁面控制器導入到某個對象中,因此當控制器被調用時,我可以檢查該對象是否存在於持有所有導入控制器的對象中,或類似的東西。
或者也許有一種方法來檢查模塊是否被導入? 有沒有更聰明的方法來做到這一點?由於
這讓我想起[從目錄中的文件導入模塊](http://stackoverflow.com/q/29722270/1048572),但我不確定它是重複還是僅僅是一個XY問題。 – Bergi
@Bergi - 我知道如何從一個目錄中導入所有文件,那不是,我的意思是,讓我們說代碼中的某處,我希望某些模塊可用,如何檢查它是否已導入?可以說模塊名稱是動態的。所以它是''page__「+ someName' – vsync
如果模塊名稱確實是動態的,則需要使用動態導入和動態模塊加載。如果導入的模塊是靜態的,就像使用'import'語法所暗示的那樣,應該沒有理由檢查模塊是否可用 - 所有導入的模塊都可以按照定義使用(如果不是,則整個模塊將失敗)。 – Bergi