具有动态路由和动态依赖的角模块化

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());
)();

【讨论】:

以上是关于具有动态路由和动态依赖的角模块化的主要内容,如果未能解决你的问题,请参考以下文章

React Router v4 - 具有更改的默认路由的动态配置

Ngnix技术研究系列2-基于Redis实现动态路由

动态路由备份

常见动态路由协议之———RIP动态路由实验

动态路由器

动态路由器