我的应用程序包含15个模块中的100个组件。
它是ctypes
和angular2.rc5
。
我升级到angular-cli.beta10
但由于依赖而保留angular-cli.beta14
。
到目前为止一切正常,但升级angular2.rc5
图标开始抛出错误。我只需要图标和核心没有加载,但以防万一我尝试加载也没有成功。
angular-material2
如果我在webpackContextResolve上调试,我看到代码是:
Uncaught Error: Cannot find module './icon'.
webpackContextResolve @ src:10
webpackContext @ src:5
(anonymous function) @ index.js:13
(anonymous function) @ index.js:3
(anonymous function) @ index.js:8
__webpack_require__ @ bootstrap 7f40e89…:52
(anonymous function) @ app.component.ts:66
__webpack_require__ @ bootstrap 7f40e89…:52
(anonymous function) @ version.js:1
__webpack_require__ @ bootstrap 7f40e89…:52
(anonymous function) @ main.bundle.js:134514
__webpack_require__ @ bootstrap 7f40e89…:52
webpackJsonpCallback @ bootstrap 7f40e89…:23
(anonymous function) @ main.bundle.js:1
主模块如下所示:
var map = {
"app/+device/device.module": 505
};
function webpackContext(req) {
return __webpack_require__(webpackContextResolve(req));
};
function webpackContextResolve(req) {
var id = map[req];
if(!(id + 1)) // check for number
throw new Error("Cannot find module '" + req + "'.");
return id;
};
webpackContext.keys = function webpackContextKeys() {
return Object.keys(map);
};
webpackContext.resolve = webpackContextResolve;
module.exports = webpackContext;
webpackContext.id = 14;
DeviceModule如下所示:
@NgModule({
imports: [
[...]
SharedModule,
HomeModule,
DeviceModule,
[...]
和SharedModule一样:
@NgModule({
imports: [
CommonModule,
SharedModule,
deviceRouting
],
这是我第一次使用webpack而且我真的不明白为什么地图中只有一个模块,为什么只有那个模块。
有什么建议吗?
更新
我已经找到了它所在的地方。在路由文件中,我需要加载一些共享子项。 在rc4中,路由器3.0.0-rc1就是这样的 路径:'设备', component:DeviceComponent,
@NgModule({
imports: [
// ANGULAR
BrowserModule,
FormsModule,
RouterModule,
ReactiveFormsModule,
JsonpModule,
// EXTERNAL
MdCoreModule,
MdIconModule,
[...]
和rc5,路由器3.0.0
children: [
{
path: 'selector',
component: DeviceSelectorComponent
},
...CONTENT_DEVICE_PREVIEW_ROUTES
]