这真是2个问题1 ...
我有一个带有Express中间件的Node后端。在进入应用程序时,我尝试通过迭代加载快速路由。以前这是使用requirejs完成的,但我想废弃所有这些并使用es6的导入/导出。
我当前的代码(基于MEAN.js):
let initModulesServerPolicies = (app) => {
forEach(config.files.server.policies, (policyPath) => {
require(path.resolve(policyPath)).invokeRolesPolicies();
});
};
我试图以某种方式让我的代码像这样:
let initModulesServerPolicies = (app) => {
forEach(config.files.server.policies, (policyPath) => {
import path.resolve(policyPath).invokeRolesPolicies();
});
};
现在,此处显示的主要错误是:
'import'和'export'可能只出现在顶层
我可以继续使用 requirejs ,但这需要我将这些策略文件中的es6导出更改回module.exports
。
我使用babel-polyfill
使我能够在服务器上使用es6导入/导出。
N.B。: config.files.server.policies
将是一个相对路径数组。这个数组大小会经常更改,因为我将从我的应用程序添加/减去模块,这就是为什么最好不要显式导入这些模块,并且迭代更为可取。
所以我的两个问题是:
当我尝试使用es6代码时,我期待这种打嗝,因为它尚未得到完全支持,所以如果不能这样做,那么我会找到另一种方式。