我一直懒惰地在路线中加载模块,例如
export const HomeRoute: Route = {
path: '',
component: HomeComponent,
canActivate: [AuthGuard],
children: [
{path: 'dashboard', loadChildren: 'app/+dashboard/db.module#DashboardModule'}
]
};
我想把我的"页面"进入NPM模块。我应该在loadChildren属性中使用node_module的路由是什么?我正在使用angular-cli 1.0.0-beta.16
我试过了
{path: 'lazy', loadChildren: '../node_modules/hello-world/components#HelloWorld' }
也
{path: 'lazy', loadChildren: 'hello-world/components#HelloWorld' }
导出的类是: -
import {Component} from '@angular/core';
@Component({
selector: 'hello-world',
styles: [`
h1 {
color: blue;
}
`],
template: `<div>
<h1 (click)="onClick()">{{message}}</h1>
</div>`
})
export class HelloWorld {
message = "Click Me ...";
onClick() {
this.message = "Hello World!";
console.log(this.message);
}
}
还有什么我应该尝试的吗?
答案 0 :(得分:2)
目前这是不可能的 - 请参阅AngularJS CLI团队的回复: -
https://github.com/angular/angular-cli/issues/2601
&#34;这是一个非常相关的问题。我不认为我们支持它 CLI atm。&#34; (目前版本为beta 17)
Datumgeek在这里以不同的方式(在CLI之外)实现了模块的延迟加载: - https://github.com/datumgeek/a2dyn/blob/master/README.md#development-server
如果以后可以在Angular CLI中使用
,我会更新答案答案 1 :(得分:0)
检查HelloWorld是否为导出类,而不是“默认导出”。否则它将无法工作。