Angular2 Webpack lazyload TypeError:无法将undefined或null转
发布时间:2020-12-17 17:08:57 所属栏目:安全 来源:网络整理
导读:我遇到角度路由器加载器的问题, 我想懒惰加载一个模块,我遵循我看到的每个指南, 并且我不断收到此错误:TypeError:无法将undefined或null转换为object: 这是我的webpack.config.common.js var webpack = require('webpack');var HtmlWebpackPlugin = requi
我遇到角度路由器加载器的问题,
我想懒惰加载一个模块,我遵循我看到的每个指南, 并且我不断收到此错误:TypeError:无法将undefined或null转换为object: 这是我的webpack.config.common.js var webpack = require('webpack'); var HtmlWebpackPlugin = require('html-webpack-plugin'); module.exports = { entry: { 'app': './app/main.ts' },resolve: { extensions: ['.js','.ts'] },module: { loaders: [ { test: /.ts$/,loaders: [ 'awesome-typescript-loader','angular2-template-loader','angular-router-loader' ] },{ test: /.html$/,loader: 'html-loader' },{ test: /.css$/,loader: 'raw-loader' } ] },plugins: [ new HtmlWebpackPlugin({ template: 'index.html' }),new webpack.ContextReplacementPlugin( // The (|/) piece accounts for path separators in *nix and windows /angular(|/)core(|/)(esm(|/)src|src)(|/)linker/,'./app' // location of the src ) ] }; 这是app.routing.ts import { ModuleWithProviders } from '@angular/core'; import { Routes,RouterModule } from '@angular/router'; const appRoutes: Routes = [ { path: '',redirectTo: '/dashboard',pathMatch: 'full' },{ path: 'dashboard',loadChildren: './dashboard/dashboard.module#DashboardModule' } ]; export const appRoutingProviders: any[] = [ ]; export const routing: ModuleWithProviders = RouterModule.forRoot(appRoutes); 这是仪表板/仪表板.模块: import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; import { FormsModule } from '@angular/forms'; import { DashboardComponent } from './dashboard.component'; import { dashboardRouting } from './dashboard.routing'; @NgModule({ imports: [ CommonModule,FormsModule,dashboardRouting ],declarations: [ DashboardComponent ],providers: [ ] }) export class DashboardModule {} 这是我的依赖项: "devDependencies": { "@types/core-js": "^0.9.35","@types/hammerjs": "^2.0.34","@types/jasmine": "^2.5.38","@types/node": "^6.0.53","angular-router-loader": "^0.5.0","angular2-template-loader": "^0.6.0","awesome-typescript-loader": "^3.0.0-beta.18","del-cli": "^0.2.1","html-loader": "^0.4.4","html-webpack-plugin": "^2.26.0","lite-server": "^2.2.2","raw-loader": "^0.5.1","webpack": "^2.2.0-rc.4","webpack-dev-server": "^2.2.0-rc.0","webpack-merge": "^2.4.0" } 我做错了什么? 解决方法
尝试导入
import { RouterModule } from '@angular/router'; import { <children routes of dashboard> } from '<path of dashboard child routes>'; 在您的仪表板/ dashboard.module中,然后将其放在DashboardModule的NgModule导入区域中 @NgModule({ imports: [ CommonModule,imports: [ RouterModule.forChild(<children routes of dashboard>) ] }) export class DashboardModule {} 请替换<>部分有必要的细节. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |