考慮以下的redux項目的JavaScript文件的文件結構(這是不是很重要,但它是一個真實的生活場景):如何自動導入和捆綁JavaScript模塊/文件?
plugins/
a/reducer.js
b/reducer.js
c/reducer.js
rootReducer.js
這是rootReducer.js
當前內容:
import { combineReducers } from 'redux'
import a from './a/reducer'
import b from './b/reducer'
import c from './c/reducer'
export default combineReducers({ a, b, c });
注即每個reducer.js
文件默認輸出一個reducer函數。
要添加一個新的插件,我創建一個合適的文件夾,添加一個新的reducer.js
文件,然後我需要手動導入reducer文件並在rootReducer.js
中註冊它。
我想這個過程是全自動的。我希望rootReducer.js
文件遍歷所有子目錄,在其中查找文件reducer.js
,並最終導入它並使用文件夾名稱將其添加到根縮減程序。
我正在使用webpack和babel來編譯和捆綁我的JavaScript文件。
我知道Node.js中有一個文件系統API,它允許我遍歷文件夾並查找reducer.js
文件。但是,一旦與webpack捆綁在一起,它會正常工作嗎?動態導入模塊/文件是否安全?
[我怕你要求的是不可能的。](http://stackoverflow.com/questions/30340005/importing-modules-using-es6-syntax-and-dynamic-path) – Ashitaka
使用'require'? – tobik