Webpack - приложение AngularJS не работает на IE11 - PullRequest
0 голосов
/ 07 сентября 2018

AngularJS приложение использует веб-пакет, есть несколько модулей, которые были созданы, и те, которые были созданы для работы с веб-пакетом.При запуске приложения во всех браузерах все работает отлично, кроме IE11.Это текущая ошибка, отображаемая в консоли IE11.

SCRIPT1006: Expected ')'
File: vendor.bundle.js, Line 1, Column 546833

ошибка в одном из импортированных модулей, который был "упакован в сеть", попытался удалить модуль и еще один из наших компонентов, который находится в другом хранилище ошибок.Я подумал, что это может быть ошибка веб-пакета, и что Babel решит проблему.

.bablerc

{
"presets": [
    [ "env", {
     "targets": {
      "browsers": ["last 2 versions", "ie >= 11"]
    },
          "useBuiltIns": true
      }]
    ]
}

package.json

"devDependencies":{
  "babel-core": "^6.26.3",
  "babel-loader": "^7.1.4",
  "babel-polyfill": "^6.26.0",
  "babel-preset-env": "^1.7.0",
  "eslint": "^5.0.1",
  "eslint-loader": "^2.0.0",
  "file-loader": "^1.1.11",
  "happypack": "^5.0.0",
  "hard-source-webpack-plugin": "^0.9.0",
  "html-loader": "^0.5.5",
  "html-webpack-plugin": "^3.2.0",
  "json-loader": "^0.5.7"
},
"dependencies":{
  ...,
  "dataservice": "git+ssh://git@<remote-server>/dataService.get#webpackify",
  "cart": "git+ssh://git@<remote-server>/cart.git#webpackify"
},
"externals": [
  "dataservice/app",
  "cart/app"
]

с использованием версии angularJS "^ 1.7.2 "и версия веб-пакета" ^ 4.12.1 "

внутри webpack.config.js имеет функцию для сборки внешних модулей, а также текущих файлов JavaScript в приложении angularJS.

webpack.config.js

module.exports = {
  entry: ["babel-polyfill", "./scripts/app.js"],
  modules.rules: [
    {  
      enforce: 'pre',
      test: /\.js$/,
      include: build_externals(),
      loader: 'eslint-loader'
    },
    {
      test: /\.js$/,
      include: build_externals(),
      use: 'happypack/loader?id=ECMAScript'
    }
  ],
  plugins: [
    {
     loader: 'babel-loader',
     options: {
      presets: ['env'],
      plugins: ['transform-es2015-modules-commonjs']
     }
   },
   new HappyPack({
    id: 'ECMAScript',
    threads: 4,
    loaders: happy_js_loader
   })
  ]
}

Схожу с ума от этой проблемы.Надеюсь, кто-то там сможет помочь.Заранее спасибо.

1 Ответ

0 голосов
/ 12 сентября 2018

Получается, что решением моей проблемы было дать правильный путь к внешним модулям. Webpack включает их в процесс сборки. IE работает отлично.

package.json

"externals": [
 "node_modules/dataservice/app",
 "node_modules/cart/app"
]
...