如何让ng serve仅解析Angular 5项目已使用文件,忽略未使用文件?
解决Angular 5(Angular CLI 1.x)构建时忽略未使用文件的问题
当然可以配置!针对Angular 5对应的Angular CLI 1.x版本,有几种靠谱的方式来让ng server忽略那些未使用的文件,避免因为它们引入不存在的内容导致构建失败:
1. 配置.angular-cli.json的exclude字段
Angular CLI的核心配置文件是.angular-cli.json(新版本是angular.json,但Angular 5用的是前者),你可以直接在里面指定要排除的文件或目录:
- 打开项目根目录下的
.angular-cli.json - 找到
apps数组里你的应用配置项,找到exclude属性(如果没有就新增一个) - 添加你要忽略的文件路径,比如:
这里的路径支持通配符"apps": [ { // 其他配置... "exclude": [ "src/app/unused-components/**/*", "src/assets/temp-unused-files/**/*", "src/app/old-service.ts" ] } ]**/*,可以匹配目录下所有文件和子目录。
2. 调整TypeScript配置文件的exclude
因为Angular CLI依赖TypeScript的编译配置,你也可以在TS配置里排除这些文件:
- 编辑根目录的
tsconfig.json,找到exclude数组,添加目标路径:"exclude": [ "node_modules", "dist", "src/app/unused/**/*" ] - 如果你的项目有
tsconfig.app.json(Angular CLI生成的应用专属TS配置),也建议在这个文件里同步添加exclude配置,因为ng server会优先参考这个文件的配置。
3. 临时应急方案
如果不想改配置,也可以快速处理:
- 把未使用的文件移动到项目目录之外,比如项目根目录下新建一个
temp-unused文件夹,把文件移过去 - 或者给这些文件重命名,添加一个CLI不会识别的后缀,比如把
unused.component.ts改成unused.component.ts.ignore,这样CLI就不会把它当作需要解析的TS文件了
注意:配置修改后,最好重启ng server,确保新的配置生效。
内容的提问来源于stack exchange,提问作者user1037355
相关产品推荐
相关产品推荐

