Webpack SyntaxError:意外的关键字';常数';。严格模式下不支持常量声明

Webpack SyntaxError:意外的关键字';常数';。严格模式下不支持常量声明,webpack,babeljs,nuxt.js,Webpack,Babeljs,Nuxt.js,在Nuxt 1.4项目上获取上述语法错误 这发生在Safari 9上,在Chrome上也能正常工作 我继续搜索,发现了由于ES6代码的浏览器兼容性问题而导致的问题,但未能找到问题的正确解决方案(Nuxt项目) 该网站也应该使用旧版本的浏览器 下面是nuxt.config.js和package.json文件的详细信息 nuxt.config.js package.json 您应该使用Babel将代码编译为常规es5或es6代码,这取决于您所寻求的兼容性 在Nuxt中,您可以在Nuxt.config

Nuxt 1.4项目上获取上述语法错误

这发生在Safari 9上,在Chrome上也能正常工作

我继续搜索,发现了由于ES6代码的浏览器兼容性问题而导致的问题,但未能找到问题的正确解决方案(Nuxt项目)

该网站也应该使用旧版本的浏览器

下面是nuxt.config.js和package.json文件的详细信息

  • nuxt.config.js
  • package.json

  • 您应该使用Babel将代码编译为常规es5或es6代码,这取决于您所寻求的兼容性

    在Nuxt中,您可以在
    Nuxt.config.js
    中使用一个
    babel
    选项来为您进行编译。 请查看
    babel
    选项的文档:


    如果您从Nuxt内部得到错误,您应该考虑升级到
    Nuxt edge
    ,以获得旧版支持。

    您应该使用Babel将代码编译为常规es5或es6代码,具体取决于您所寻求的兼容性

    在Nuxt中,您可以在
    Nuxt.config.js
    中使用一个
    babel
    选项来为您进行编译。 请查看
    babel
    选项的文档:

    如果您从Nuxt内部得到错误,您应该考虑升级到
    Nuxt edge
    以获得旧版支持

    module.exports = {
      /*
      ** Build configuration
      */
      build: {
        /*
        ** Run ESLint on save
        */
        extend (config, { isDev, isClient }) {
          if (isDev && isClient) {
            config.module.rules.push({
              enforce: 'pre',
              test: /\.(js|vue)$/,
              loader: 'eslint-loader',
              exclude: /(node_modules)/
            })
          }
        },
        vendor: ['babel-polyfill']
      }
    }
    
    {
      "dependencies": {
        "axios": "^0.18.0",
        "babel-polyfill": "^6.26.0",
        "nuxt": "^1.4.0",
        "vee-validate": "^2.0.5",
        "vue-carousel": "^0.6.5",
        "vue-i18n": "^7.4.2",
        "vue-smooth-scroll": "^1.0.13",
        "vue-tabs-component": "^1.4.0",
        "vue-youtube-embed": "^2.1.3",
        "vue2-google-maps": "^0.8.8"
      },
      "devDependencies": {
        "ava": "^0.25.0",
        "babel-eslint": "^8.2.1",
        "eslint": "^4.17.0",
        "eslint-config-standard": "^11.0.0-beta.0",
        "eslint-friendly-formatter": "^3.0.0",
        "eslint-loader": "^1.7.1",
        "eslint-plugin-html": "^4.0.2",
        "eslint-plugin-import": "^2.8.0",
        "eslint-plugin-node": "^6.0.0",
        "eslint-plugin-promise": "^3.6.0",
        "eslint-plugin-standard": "^3.0.1",
        "eslint-plugin-vue": "^4.0.0",
        "jsdom": "^11.6.2"
      },
      "babel": {
        "presets": [
          "es2015"
        ]
      }
    }