angular-router-loader不使用npm链接包

时间:2017-02-16 23:37:48

标签: angularjs angular webpack lazy-loading

如何使此加载程序使用npm link ed依赖项?

我有两个项目Project AProject BProject Bnpm link相关联,并向project A提供模块。 当我在Project A的app.routing.ts上延迟加载时,加载程序正常工作:

...
{
    path: "my-apps",
    loadChildren: "project-b/my-apps/my-apps.module#MyAppsModule",
},
...

这正确地生成了从Project B延迟加载模块的指令:

...
{
    path: "my-apps",
    loadChildren: function () { return new Promise(function (resolve)     { __webpack_require__.e/* require.ensure */(0).then((function (require) { resolve(__webpack_require__(1554)['MyAppsModule']); }).bind(null, __webpack_require__)).catch(__webpack_require__.oe); }); },
},
...

但是... 在MyAppsModule上(来自Project B)我还有一个延迟加载的子进程,其中包含以下指令:

{
    path: ":slug",
    loadChildren: "./app-content/app-content.module#AppContentModule"
}

问题是加载器没有改变Project B模块的loadChildren,它保持结果不变,它产生以下结果:

{
    path: ":slug",
    loadChildren: "./app-content/app-content.module#AppContentModule"
}

最终会破坏我的应用并显示以下消息:

EXCEPTION: Uncaught (in promise): Error: Cannot find module './app-content/app-content.module'.

现在我是"懒加载"该模块通过手动导入模块并在loadChildren选项中使用它,但据我所知,这并不是懒惰加载模块本身。 (如果我错了,请纠正我)

你们知道如何使这个加载器与npm link ed依赖项一起工作? 提前谢谢。

Webpack@2.2.1 angular-router-loader@0.5.0

0 个答案:

没有答案