在Angular应用程序开发期间生成唯一的JS脚本名称

时间:2018-07-24 09:21:05

标签: angular

我正在开发Angular 6应用,并且开发需要在一个非常自定义的浏览器中进行,该浏览器具有非常激进的缓存策略,而且我无法更改。

问题是浏览器缓存了runtime.jsmain.js等...

我知道我可以使用ng serve --prod来使Angular生成诸如runtime.a79af62d1feed345ccb6.js之类的唯一脚本名称,这可以解决我的缓存问题,但是它也很慢。

所以问题是:

有没有一种方法可以激活唯一脚本名称的生成而没有--prod选项的缺点?

也许通过angular.json文件。

1 个答案:

答案 0 :(得分:2)

好的,我找到了方法。

我在"outputHashing": "all"文件的projects> my-app> architect> build部分中添加了angular.json属性。

{
    "builder": "@angular-devkit/build-angular:browser",
    "options": {
        "outputPath": "dist/my-app",
        "index": "src/index.html",
        "main": "src/main.ts",
        "polyfills": "src/polyfills.ts",
        "tsConfig": "src/tsconfig.app.json",
        "assets": [
            "src/favicon.png",
            "src/assets"
        ],
        "styles": [
            "node_modules/bootstrap/scss/bootstrap.scss",
            "src/scss/styles.scss"
        ],
        "scripts": [],
        "outputHashing": "all" <--- Relevant line
    },
    "configurations": { ... },
}