我有一个关于动态获取主模块的路由和依赖关系的问题。我现在已经研究了这个超过3天,并且没有找到满意的答案。我发现了一些看起来很接近的东西,但它不是我想要的东西,我不想懒惰加载我的模块或只是动态地设置路线。
所以我会尽可能清楚地解释我的需求: 在我的项目中有一个名称共享的文件夹,其中包含一些可重用的模块。我需要我的app.js通过拖放模块和依赖来实现路由而无需手动更改!
有人有解决方案吗? 感谢您的时间和帮助
答案 0 :(得分:0)
此代码段可以满足您的动态模块分辨率要求。 创建deps数组,然后将其传递给“define”方法(由requirejs注册)。 将所有相关的依赖项放在同一个文件夹中。对于每个模块,您可以创建单独的js文件。每次我需要一个新服务时,我都会为该服务创建一个单独的js文件,并将其放在'services'目录中,最后将新服务名称附加到依赖数组中。并且可以使用新模块。
(function () {
(function (deps) {
window.app.utils.appendPrefixToPaths(window.app.paths.services.out.get(), deps);
deps.unshift("2.services/directive");
deps.unshift("2.services/view");
deps.unshift("2.services/preference");
deps.unshift("2.services/alert");
deps.unshift("2.services/materialDataTable");
deps.unshift("2.services/security");
deps.unshift("2.services/theme");
deps.unshift("1.directives/_");
define(deps, function (obj) {
return obj;
});
})(window.app.services.fileNames.get());
})();