我们已经将Angular应用程序从7.2版更新到了8版。到目前为止,更新过程一直有效,并且可以在Chrome,Firefox开发者版,Safari,Opera上以本地方式和产品模式(在服务器上)使用该应用程序,通常。
但是在普通的Firefox浏览器和Waterfox中,该应用无法正常工作:
我们创建了一个浏览器列表文件,其中包含以下内容:
# This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
# For additional information regarding the format and rule options, please see:
# https://github.com/browserslist/browserslist#queries
# You can see what browsers were selected by your queries by running:
# npx browserslist
> 0.5%
last 2 versions
Firefox ESR
not dead
not IE 9-11 # For IE 9-11 support, remove 'not'.
我们的tsconfig如下:
{
"compileOnSave": false,
"compilerOptions": {
"downlevelIteration": true,
"importHelpers": true,
"outDir": "./dist/out-tsc",
"baseUrl": "src",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es2015",
"typeRoots": [
"Node_modules / @ types"
]
"lib": [
"ES2016"
"Dom"
]
"module": "esnext"
}
}
以及angular.json中具有ssl配置的区域,因此:
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "farm-management-ui:build",
"port": 8080,
"ssl": true,
"proxyConfig": "src/proxy.conf.js"
},
我们已经成功执行了以下命令:
ng更新@ angular / cli-从7-到8-仅迁移-
ng更新@角度/核心-从7-到8-仅迁移
我觉得如果该应用程序在Firefox中运行,则会创建一个无限循环,因为我也无法打开其他网页,例如Stackoverflow等。
为什么Firefox突然出现这种行为,我们该如何解决?
答案 0 :(得分:2)
将属性target
从 es2015 更改为 tsconfig.json ,更改为旧值 es5 ,应用程序有效。