内容简介:http://stackoverflow.com/questions/39619003/creating-multiple-bundles-using-angular-cli-webpack
当我使用angular-cli构建项目时,它会将所有项目文件捆绑到一个主要的主包中.
我在应用程序中使用了懒惰路由,一旦应用程序加载,我就可以导航.
有没有一种方法可以将主包分为多个基于懒惰加载的路由模块的文件?
下面是角度-cli.json中的配置
{ "project": { "version": "1.0.0-beta.15", "name": "maddy-test-project" }, "apps": [ { "root": "src", "outDir": "dist", "assets": "styles/content", "index": "default.htm", "main": "main.ts", "test": "test.ts", "tsconfig": "tsconfig.json", "prefix": "", "mobile": false, "styles": [ "styles.less" ], "scripts": [ "styles/wfa-myriad-pro-typekit.js" ], "environments": { "source": "environments/environment.ts", "dev": "environments/environment.ts", "prod": "environments/environment.prod.ts" } } ], "addons": [], "packages": [], "e2e": { "protractor": { "config": "./protractor.conf.js" } }, "test": { "karma": { "config": "./karma.conf.js" } }, "defaults": { "styleExt": "less", "prefixInterfaces": false } }
下面是package.json
{ "name": "maddy-test-project", "version": "0.0.1", "license": "MIT", "angular-cli": {}, "scripts": { "start": "ng serve", "lint": "tslint \"src/**/*.ts\"", "test": "ng test", "pree2e": "webdriver-manager update", "e2e": "protractor" }, "private": true, "dependencies": { "@angular/common": "2.0.0", "@angular/compiler": "2.0.0", "@angular/core": "2.0.0", "@angular/forms": "2.0.0", "@angular/http": "2.0.0", "@angular/platform-browser": "2.0.0", "@angular/platform-browser-dynamic": "2.0.0", "@angular/router": "3.0.0", "d3": "^4.2.3", "jquery": "^3.1.0", "lodash": "^4.15.0", "moment": "^2.15.0", "core-js": "^2.4.1", "rxjs": "5.0.0-beta.12", "toastr": "^2.1.2", "ts-helpers": "^1.1.1", "zone.js": "^0.6.23", "bootstrap-daterangepicker": "^2.1.24" }, "devDependencies": { "@types/d3": "^3.5.35", "@types/google-maps": "^3.1.27", "@types/jasmine": "^2.2.30", "@types/jquery": "^1.10.31", "@types/lodash": "^4.14.34", "@types/toastr": "^2.1.29", "angular-cli": "1.0.0-beta.15", "codelyzer": "~0.0.26", "jasmine-core": "2.4.1", "jasmine-spec-reporter": "2.5.0", "karma": "1.2.0", "karma-chrome-launcher": "^2.0.0", "karma-cli": "^1.0.1", "karma-jasmine": "^1.0.2", "karma-remap-istanbul": "^0.2.1", "protractor": "4.0.5", "ts-node": "1.2.1", "tslint": "3.13.0", "typescript": "2.0.2" } }
提前致谢!!
The first thing that we need to do is to remove every mention of the Home component or the HomeModule from the App component and the main routing configuration: We can see here that the App component no longer imports HomeModule, instead the routing config uses loadChildren to say that if /home or any other url starting with it gets hit, then the file home.module should be loaded via an Ajax call.
很快,为了在一个懒惰模块中移动一些逻辑和组件,您可以运行以下命令:
ng g module child --routing
然后angular-cli将生成一个NgModule(app / child / child.module.ts)和一个子路由器配置(app / child / child-routing.module.ts).
延迟加载此子路由器的路由将是:
{ path: 'child', loadChildren: 'app/child/child.module#ChildModule' }
最后用一个约束移动你想要的ChildModule:其他模块(作为AppModule)将无法使用任何ChildModule依赖项(例如服务).如果你需要它,一个很好的做法是创建一个共享模块.
http://stackoverflow.com/questions/39619003/creating-multiple-bundles-using-angular-cli-webpack
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 每个锁创建多个条件队列以避免虚假唤醒
- Multitor:通过HAProxy创建多个TOR实例并实现负载均衡的工具
- 监控多个Kubernetes集群
- 管理多个远端仓库
- Git 推送到多个仓库
- 运行多个 npm script
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Algorithms for Image Processing and Computer Vision
Parker, J. R. / 2010-12 / 687.00元
A cookbook of algorithms for common image processing applications Thanks to advances in computer hardware and software, algorithms have been developed that support sophisticated image processing with......一起来看看 《Algorithms for Image Processing and Computer Vision》 这本书的介绍吧!
Markdown 在线编辑器
Markdown 在线编辑器
正则表达式在线测试
正则表达式在线测试