【发布时间】:2016-03-10 16:28:07
【问题描述】:
我在单独的文件中有几个 reactjs 组件(让它成为一个窗口),例如:
windows/window1.jsx
windows/window2.jsx
...
windows/windowN.jsx
我还有一个名为“WindowManager”的组件,我想用它来快速调用代码中任何位置的任何窗口。
现在我应该像这样在 WindowManager.jsx 中存储所有可能的窗口:
var windowsTypes = {
window1 : require('windows/window1.jsx'),
window2 : require('windows/window1.jsx'),
...
windowN : require('windows/windowN.jsx')
}
...然后这样称呼它:
WindowManager.addWindow(windowTypes.windowN, { ... custom windowN-related props ...});
如果我要添加一个新的窗口类型,那么我还应该在“windowsTypes”列表中添加一个新项目“windowN”:require(...),在我看来这不是很干燥的解决方案。我想要实现的是摆脱“windowsTypes”的必要性。
有什么干净的方法可以做到这一点吗?可能在其他插件和库的帮助下?
【问题讨论】:
-
你在使用 webpack 吗?
-
不,我不知道。我正在使用 gulp + browserify + cssify + lint。
-
可能我已经找到了答案:github.com/jsoverson/preprocess 和 github.com/bibliolabs/preprocessify 如果可行,我会尝试发布答案。但也许这不是唯一的方法。
标签: reactjs autoload react-jsx