【问题标题】:Polyfill not working on IE11, shows SCRIPT1003 Expected ":"Polyfill 在 IE11 上不起作用,显示 SCRIPT1003 Expected ":"
【发布时间】:2020-05-11 20:29:12
【问题描述】:

所以我刚刚从一个朋友那里得知该网站在 IE11 上显示了一个空白页面。我启动了 Sauce Labs,从控制台发现错误如标题所示,即SCRIPT1003 Expected ":"

我似乎无法确定确切的错误是什么,但它可能与我在 Laravel Mix 中使用的名为 laravel-mix-polyfillhere 的 polyfill 有关。在这方面的任何帮助将不胜感激。

webpack.mix.js

.polyfill({
        enabled: true,
        useBuiltIns: "usage",
        targets: {"firefox": "50", "ie": 11}
    });

package.json

{
    "private": true,
    "scripts": {
        "dev": "npm run development",
        "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
        "watch": "npm run development -- --watch",
        "watch-poll": "npm run watch -- --watch-poll",
        "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
        "prod": "npm run production",
        "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
    },
    "devDependencies": {
        "@ideal-postcodes/core-node": "^1.3.0",
        "@websanova/vue-auth": "^2.21.15-beta",
        "autosize": "^4.0.2",
        "awesome-phonenumber": "^2.25.0",
        "axios": "^0.19.0",
        "browser-sync": "^2.26.7",
        "browser-sync-webpack-plugin": "^2.0.1",
        "cross-env": "^5.2.1",
        "datejs": "^1.0.0-rc3",
        "es6-promise": "^4.2.8",
        "jquery": "^3.4.1",
        "js-cookie": "^2.2.1",
        "laravel-mix": "^4.1.4",
        "laravel-mix-polyfill": "^1.1.0",
        "laravel-vapor": "^0.2.0",
        "lodash": "^4.17.15",
        "moment": "^2.24.0",
        "moment-timezone": "^0.5.27",
        "node-sass": "^4.13.0",
        "prettier": "1.19.1",
        "resolve-url-loader": "^3.1.0",
        "sass": "^1.23.7",
        "sass-loader": "^7.3.1",
        "sweetalert2": "^9.4.0",
        "v-calendar": "^1.0.1",
        "vee-validate": "^3.1.1",
        "vue": "^2.6.10",
        "vue-axios": "^2.1.5",
        "vue-friendly-iframe": "^0.17.0",
        "vue-password-strength-meter": "^1.6.1",
        "vue-router": "^3.1.3",
        "vue-scrollto": "^2.17.1",
        "vue-spinner": "^1.0.3",
        "vue-template-compiler": "^2.6.10",
        "vuex": "^3.1.2",
        "zxcvbn": "^4.4.2"
    },
    "dependencies": {
        "array-flat-polyfill": "^1.0.1",
        "calculate-aspect-ratio": "^0.1.3",
        "clear": "^0.1.0",
        "izitoast": "^1.4.0",
        "vue-izitoast": "^1.2.1",
        "vue-notifications": "^1.0.2",
        "vue-sticky-directive": "0.0.10",
        "vue-sweetalert2": "^3.0.1",
        "vue2-dropzone": "^3.6.0"
    }
}

【问题讨论】:

  • Webpack 不会将依赖项转换为旧代码(es5、es3 等),因此您的依赖项可能不支持 IE11。
  • @GetOffMyLawn 当然可以,但是我怎样才能在不反复试验的情况下确定这一点?

标签: javascript laravel babeljs laravel-mix


【解决方案1】:

如果你使用 vue.config.js 来打包配置呢,

插入transpileDependencies:['laravel-mix-polyfill'], 将此代码放入您的代码中以填充可疑的依赖项。

对我有用

【讨论】:

    猜你喜欢
    • 2020-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-16
    相关资源
    最近更新 更多