Angular IE11语法错误vendor.js(124116)类Dom7

时间:2019-02-20 12:11:23

标签: angular syntax vendor

在IE11中打开项目时,我会得到

  

SCRIPT1002:语法错误

     

vendor.js(124116,1)

当我导航到指定行上的vendor.js时,我发现

class Dom7 {
constructor(arr) {
    const self = this;
    // Create array-like object
    for (let i = 0; i < arr.length; i += 1) {
      self[i] = arr[i];
    }
    self.length = arr.length;
    // Return collection with methods
    return this;
  }
}

我尝试了所有解决方案的组合,例如取消对所有pollyfils.ts的注释

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';

还针对es5 / es6,更改tsconfig.json中的lib(添加es2016)等

"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
  "node_modules/@types"
],
"lib": [
  "es2017",
  "dom"
]}

任何人都可以帮忙,我没主意了

1 个答案:

答案 0 :(得分:-1)

这是依赖的问题,我在ngx-useful-swiper库中也遇到了同样的问题,您不需要为此使用polyfill,只需将代码转换为es5语法