Angular 15中ng build/npm run build默认是否排除spec文件?
关于npm run build是否默认排除spec文件的解答
- 从你检查dist文件夹main.js没发现spec内容的情况来看,大概率是构建时已经排除了spec文件,但没法100%确定,得结合你的项目构建工具配置进一步验证。
- 主流构建工具(比如webpack、vite)都遵循行业默认约定:
.spec.js/.test.js这类测试文件不会被纳入生产构建的打包范围——因为测试代码只用于开发阶段验证逻辑,不需要进入生产环境,所以工具会自动过滤这类命名的文件,很多官方文档不会特意写这点,属于默认的“常识性”规则。 - 要彻底确认的话,可以做这两步:
- 查看项目根目录的构建配置文件(比如
webpack.config.js、vite.config.js),检查是否有针对spec文件的exclude规则,同时确认你的项目入口文件有没有意外引入spec文件; - 给某个spec文件加一段唯一标记,比如:
重新执行console.log('SPEC_UNIQUE_MARKER_123')npm run build,然后在dist文件夹下全量搜索这段标记,要是搜不到,就完全可以确定spec文件被排除了。
- 查看项目根目录的构建配置文件(比如
内容的提问来源于stack exchange,提问作者jaki
相关产品推荐
相关产品推荐

