我已经完成了互联网上不同帖子中提到的所有内容,但是我的问题仍然存在。
我未评论IE 9、10、11所需的polyfills
/** IE9, IE10 and IE11 requires all of the following polyfills. **/
import 'core-js/es6/symbol';
import 'core-js/es6/object';
import 'core-js/es6/function';
import 'core-js/es6/parse-int';
import 'core-js/es6/parse-float';
import 'core-js/es6/number';
import 'core-js/es6/math';
import 'core-js/es6/string';
import 'core-js/es6/date';
import 'core-js/es6/array';
import 'core-js/es6/regexp';
import 'core-js/es6/map';
import 'core-js/es6/weak-map';
import 'core-js/es6/set';
我在index.html中应用了元标记
<meta http-equiv="X-UA-Compatible" content="IE=edge" >
但是在IE 11中工作时仍然出现错误:
SCRIPT438:对象不支持属性或方法“绑定” runtime.js(208,11)
SCRIPT1010:预期的标识符polyfills.js(3846,36)
SCRIPT1010:预期的标识符styles.js(310,24)
SCRIPT1028:期望的标识符,字符串或数字vendor.js(298,5)
SCRIPT1010:预期的标识符main.js(1424,32)
编辑1 这是我的tsconfig.json:
{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"baseUrl": "src",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2016",
"dom"
],
"paths": {
"jszip": [
"../node_modules/jszip/dist/jszip.min.js"
]
}
}
}
任何帮助将不胜感激。
答案 0 :(得分:5)
如何升级到angular v8
?
自上一个主要版本以来,构建过程已针对旧浏览器进行了优化。
在Angular CLI版本8和更高版本中,使用差异加载来构建应用程序,该策略是CLI会构建两个单独的捆绑软件作为已部署应用程序的一部分。
第一个捆绑包包含现代ES2015语法,利用了现代浏览器中的内置支持,减少了polyfill的发布,并减小了捆绑包的大小。
第二个捆绑软件包含旧ES5语法的代码以及所有必要的polyfills。这会导致更大的捆绑包大小,但支持较旧的浏览器。
在IE上的开发
自从将angular升级到v8以来,您应该看看https://stackoverflow.com/a/56573079/4467001来解决有关开发模式和css的问题
答案 1 :(得分:1)
我通过以下4个步骤解决了这个问题! 为您服务,请从第3步开始。
1。在您的项目中找到polyfill.ts
3。在npm下安装
4.ng服务
信用:https://blog.angularindepth.com/angular-and-internet-explorer-5e59bb6fb4e9