为什么我得到“解析错误:意外的令牌

问题描述 投票:0回答:1

我创建了一个Laravel项目并安装了VSCode和所有必要的扩展。其中一个是ESLint,它可以正常使用JS文件,但是当我打开像(resources / js / component / ExampleComponent.vue)这样的Vue组件时,我从ESLint得到了这个错误:

“解析错误:意外的令牌<eslint [1,1]”

我的.eslintrc.jsfile是使用./node_modules/.bin/eslint --init生成并回答问题。

我已经用Google搜索并找到了这个解决方案:

npm install babel-eslint --save-dev

并将其添加到.eslintrc.js

parser: "babel-eslint"

但它无论如何都不起作用,错误就在那里。

这是我的ExampleComponent.vue(未经修改,来自Laravel):

<template> (ESLint error here: "Parsing error: Unexpected token < eslint [1,1]")
    <div class="container">
        <div class="row justify-content-center">
            <div class="col-md-8">
                <div class="card">
                    <div class="card-header">
                        Example Component
                    </div>

                    <div class="card-body">
                        I'm an example component.
                    </div>
                </div>
            </div>
        </div>
    </div>
</template>

<script>
    export default {
        mounted() {
            console.log('Component mounted.')
        }
    }
</script>

这是我的.eslintrc.js

module.exports = {
  env: {
    browser: true,
    es6: true,
  },
  extends: 'airbnb-base',
  globals: {
    Atomics: 'readonly',
    SharedArrayBuffer: 'readonly',
  },
  parserOptions: {
    ecmaVersion: 2018,
    sourceType: 'module',
    parser: "babel-eslint",
  },
  plugins: [
    'vue',
  ],
  rules: {
  },
};
laravel vue.js eslint
1个回答
1
投票

我相信你需要插件eslint-plugin-vue,并将你的.eslintrc.js配置设置为以下设置之一,以便这个工作。

  • "extends": ["plugin:vue/recommended"]
  • "extends": ["plugin:vue/base"]

你可以阅读more about eslint-plugin-vue here - here is a reference来解决你遇到的类似问题。

希望这可以帮助!

编辑:这是来自eslint项目的vue cli配置(看来你也可以使用["plugin:vue/essential"]

module.exports = {
  "root": true,
  "env": {
    "node": true
  },
  "extends": [
    "plugin:vue/essential",
    "eslint:recommended"
  ],
  "rules": {},
  "parserOptions": {
    "parser": "babel-eslint"
  }
}
© www.soinside.com 2019 - 2024. All rights reserved.