使用最新的vue-eslint-parser-Encore

时间:2019-10-18 07:52:32

标签: vue.js eslint webpack-encore eslintrc

我能够与Encore(Symfony)一起建立ESLint。我的.eslintrc.js文件具有以下配置:

module.exports = {
    "parser": "vue-eslint-parser",
    "parserOptions": {
        "parser": "babel-eslint",
        "ecmaFeatures": {
            "legacyDecorators": true
        },
        "ecmaVersion": 5,
    },
    "extends": [
        "plugin:vue/base",
        "airbnb-base"
    ],
    "rules": {
       "vue/html-indent": [2, 4],
        ...
    },
    "env": {
        browser: true,
        es6: true,
        node: true
    },
    "plugins": [
        "vue",
    ]
};

,每当我观看文件时,都会收到以下错误1:1 error Use the latest vue-eslint-parser. See also https://vuejs.github.io/eslint-plugin-vue/user-guide/#what-is-the-use-the-latest-vue-eslint-parser-error vue/html-indent

我尝试了以下链接中的解决方案:

任何建议将不胜感激。谢谢

1 个答案:

答案 0 :(得分:0)

这是因为Encore将解析器选项设置为babel-eslint,并且与eslint-plugin-vue不兼容。

作为解决方法,您可以使用以下代码让Encore / ESLint整理.vue文件:

Encore
  .enableEslintLoader(options => {
      delete options.parser;
  })
  .configureLoaderRule('eslint', loader => {
      loader.test = /\.(jsx?|vue)$/;
  })

所有功劳归于Github的Kocal:https://github.com/symfony/webpack-encore/issues/656