Angular执行ng build生成的资源文件名如何去除哈希后缀?
Angular(.NET集成项目)移除构建产物文件名哈希后缀的方案
Angular默认给构建产物文件名加哈希值是为了处理浏览器缓存问题,如需移除可通过以下两种方式实现:
方式1:构建命令临时指定参数
执行构建时直接添加--output-hashing none参数即可:
ng build --output-hashing none
方式2:修改配置文件永久生效
- 第一步:修改Angular配置
找到项目根目录下的angular.json文件,依次定位到projects -> 你的项目名称 -> architect -> build -> options节点,添加如下配置:
"outputHashing": "none"
如果你的生产环境构建单独配置了参数,还需要同步修改configurations -> production节点下的outputHashing配置为none。
- 第二步:适配.NET构建流程(可选)
如果你的项目是通过dotnet build/dotnet publish命令自动触发Angular构建,直接修改angular.json即可生效,无需额外修改.NET项目配置;如果之前在.csproj文件中硬编码了Angular构建参数,同步将--output-hashing none添加到对应的ng build命令后即可。
注意:关闭文件名哈希后,浏览器可能会缓存旧版本的静态资源,部署更新后用户可能需要强制刷新页面才能加载最新内容,非特殊需求不建议关闭该功能。
内容的提问来源于stack exchange,提问作者krzchbt
相关产品推荐
相关产品推荐

