具有动态路由和动态依赖的角模块化
Posted
技术标签:
【中文标题】具有动态路由和动态依赖的角模块化【英文标题】:Angular modularization with dynamic route and dynamic dependency 【发布时间】:2015-03-05 03:52:13 【问题描述】:我有一个关于动态获取主模块的路由和依赖关系的问题。我已经研究了 3 多天了,还没有找到满意的答案。我发现了一些似乎很接近但不是我想要的东西,我不想延迟加载我的模块或只是动态设置路由。
所以我会尽量清楚地解释我的需求: 在我的项目中有一个名称共享的文件夹,其中包含一些可重用的模块。我需要我的 app.js 通过拖放模块和依赖来实现路由,而无需手动更改!
有人对此有解决方案吗? 感谢您的时间和帮助
【问题讨论】:
【参考方案1】:这个 sn-p 可以解决您的动态模块解析要求。 创建 deps 数组,然后将其传递给“定义”方法(由 requirejs 注册)。 将所有相关的依赖项放在同一个文件夹中。对于每个模块,您可以创建一个单独的 js 文件。每次需要新服务时,我都会为该服务创建一个单独的 js 文件并将其放置到“服务”目录中,最后将新服务名称附加到依赖项数组中。并且新模块可以使用了。
(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());
)();
【讨论】:
以上是关于具有动态路由和动态依赖的角模块化的主要内容,如果未能解决你的问题,请参考以下文章