After vue packaging, iphone 5c ios10.3.3 opens and reports errors, and there are no errors during debugging. Find a solution

problem description

5c. .. ,.() 

the environmental background of the problems and what methods you have tried

 10.3ios5c
,  babel-polyfill,es6-promise,

related codes

/ / Please paste the code text below (do not replace the code with pictures)

main.js
    import "babel-polyfill"
    import Es6Promise from "es6-promise"
    require("es6-promise").polyfill()
    Es6Promise.polyfill()
webpack.base.conf.js
    entry: {
        app: ["babel-polyfill","./src/main.js"]
    }

what result do you expect? What is the error message actually seen?


1. SyntaxError: Cannot declare a let variable twice: "t".   vendor.js 
2. TypeError: undefined is not an object (evaluating "r[n].call")

? 
.babelrc 
    {
      "presets": [
        ["env", {
          "modules": false,
          "targets": {
            "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
          }
        }],
        "stage-2"
      ],
      "plugins": ["transform-vue-jsx", "transform-runtime"],
      "env": {
        "test": {
          "presets": ["env", "stage-2"],
          "plugins": ["istanbul"]
        }
      }
    }
webpack.base.conf.js
    "use strict"
    const path = require("path")
    const utils = require("./utils")
    const config = require("../config")
    const vueLoaderConfig = require("./vue-loader.conf")
    function resolve (dir) {
      return path.join(__dirname, "..", dir)
    }
    
    module.exports = {
      context: path.resolve(__dirname, "../"),
      entry: {
        app: ["./src/main.js"]
      },
      output: {
        path: config.build.assetsRoot,
        filename: "[name].js",
        publicPath: process.env.NODE_ENV === "production"
          ? config.build.assetsPublicPath
          : config.dev.assetsPublicPath
      },
      plugins: [
        new webpack.ProvidePlugin({
          $: "jquery",
          jQuery: "jquery",
          "windows.jQuery": "jquery"
        })
      ],
      resolve: {
        extensions: [".js", ".vue", ".json"],
        alias: {
          "vue$": "vue/dist/vue.esm.js",
          "@": resolve("src"),
        }
      },
      module: {
        rules: [
          {
            test: /\.vue$/,
            loader: "vue-loader",
            options: vueLoaderConfig
          },
          {
            test: /\.js$/,
            loader: "babel-loader",
            include: [resolve("src"), resolve("test"), resolve("node_modules/webpack-dev-server/client")]
          },
          {
            test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
            loader: "url-loader",
            options: {
              limit: 10000,
              name: utils.assetsPath("img/[name].[hash:7].[ext]")
            }
          },
          {
            test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
            loader: "url-loader",
            options: {
              limit: 10000,
              name: utils.assetsPath("media/[name].[hash:7].[ext]")
            }
          },
          {
            test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
            loader: "url-loader",
            options: {
              limit: 10000,
              name: utils.assetsPath("fonts/[name].[hash:7].[ext]")
            }
          }
        ]
      },
      node: {
        // prevent webpack from injecting useless setImmediate polyfill because Vue
        // source contains it (although only uses it if it"s native).
        setImmediate: false,
        // prevent webpack from injecting mocks to Node native modules
        // that does not make sense for the client
        dgram: "empty",
        fs: "empty",
        net: "empty",
        tls: "empty",
        child_process: "empty"
      }
    }


vender actually has let syntax. The code has not been fully translated, post your babel configuration and webpack configuration


is still not solved, manually set the top. I hope everyone can give the answer


I have the same question as you. Do you use any plug-ins in your code, such as swiper
vue development SPA bug on ios10


The

error is that the same variable cannot be declared with let more than once and the object cannot be empty.

The

question is the question you posted, and your webpack does not show how the vendor is packaged.

did you get your vendor in the form of precompilation?

Menu