Jhipster角项目无法在IE11上运行

时间:2019-08-06 10:00:15

标签: angular jhipster

我们的项目是一个基于Jhipster的发电机项目。 最近,我们将core-js更新为V3.1.3。 除IE11外,该项目运行正常。 当我们尝试使用IE11访问此项目时 它给我们:

  

发生了错误:-(

     

常见错误原因
  1.您是从IDE启动应用程序的,没有运行npm start或npm run webpack:build。
  2.运行npm install时出现网络错误。如果您是公司代理人,则可能是由于您的公司   代理。看看JHipster错误日志,您可能会发现   错误原因。   3,您安装了不适用于JHipster的Node.js版本:请使用LTS(长期支持)版本,因为这是唯一的版本   我们支持的版本。

Google询问了有关angular如何与IE11一起工作的一些问题。 我们已经在polyfill.ts中添加了一些导入。 已安装classlist.jsweb-animation-js

import 'classlist.js';
import 'web-animations-js';

// support for IE 11
import 'core-js/es/symbol';
import 'core-js/es/object';
import 'core-js/es/function';
import 'core-js/es/parse-int';
import 'core-js/es/parse-float';
import 'core-js/es/number';
import 'core-js/es/math';
import 'core-js/es/string';
import 'core-js/es/date';
import 'core-js/es/array';
import 'core-js/es/regexp';
import 'core-js/es/map';
import 'core-js/es/weak-map';
import 'core-js/es/set';
import 'core-js/es/reflect';
import 'core-js/features/symbol';
import 'core-js/features/object';
import 'core-js/features/function';
import 'core-js/features/parse-int';
import 'core-js/features/parse-float';
import 'core-js/features/number';
import 'core-js/features/math';
import 'core-js/features/string';
import 'core-js/features/date';
import 'core-js/features/array';
import 'core-js/features/regexp';
import 'core-js/features/map';
import 'core-js/features/weak-map';
import 'core-js/features/set';
import 'core-js/features/reflect';



import 'core-js/proposals/reflect-metadata';
import 'zone.js/dist/zone';

在控制台中出现错误:

  

Google Maps JavaScript API错误:RefererNotAllowedMapError   https://developers.google.com/maps/documentation/javascript/error-messages#referer-not-allowed-map-error   您要授权的网站网址:http://localhost:9000/

我们不确定这是否与此问题有关。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

您可以检查我对类似问题here的回答。

首先,添加以下package.json个依赖项:@babel/core@babel/preset-envbabel-loader

yarn add @babel/core @babel/preset-env babel-loader --exact --dev

(经过以下版本测试:

    "@babel/core": "7.6.4",
    "@babel/preset-env": "7.6.3",
    "babel-loader": "8.0.6",

现在在src/main/webapp/app/polyfills.ts的顶部添加以下行:

import 'core-js/stable';
import 'regenerator-runtime/runtime';

webpack/webpack.common.js之后

            {
                test: /manifest.webapp$/,
                loader: 'file-loader',
                options: {
                    name: 'manifest.webapp'
                }
            },

添加以下几行:

            {
                test: /\.js/,
                use: {
                  loader: 'babel-loader',
                  options: {
                    "presets": [
                      [
                        "@babel/preset-env",
                        {
                          "targets": {
                            "firefox": "60",
                            "ie": "11"
                          },
                          "useBuiltIns": "entry",
                          "corejs": 3
                        }
                      ]
                    ]
                  }
                },
                exclude: /@babel(?:\/|\\{1,2})runtime|core-js/,
              },

最后,在targetes5中将tsconfig.json更改为tsconfig-aot.json