Parsing error: Unexpected token prettier/prettier caused by "<!DOCTYPE html>"

Parsing error: Unexpected token prettier/prettier caused by "<!DOCTYPE html>"

我有这个使用 vue cli 创建的 vue 应用程序,我使用的版本是 vue2(带有 eslint 和 prettier)。

我可以 运行 npm run serve 并加载我的页面。但是在 Visual Studio 代码中,我注意到这个错误:

{
    "resource": "/c:/vue/app2/public/index.html",
    "owner": "eslint",
    "code": {
        "value": "prettier/prettier",
        "target": {
            "$mid": 1,
            "external": "https://github.com/prettier/eslint-plugin-prettier#options",
            "path": "/prettier/eslint-plugin-prettier",
            "scheme": "https",
            "authority": "github.com",
            "fragment": "options"
        }
    },
    "severity": 4,
    "message": "Parsing error: Unexpected token",
    "source": "eslint",
    "startLineNumber": 1,
    "startColumn": 2,
    "endLineNumber": 1,
    "endColumn": 2
}

这是我的 .eslintrc.js,它是我在创建应用程序时自动生成的,此后我没有对其进行任何更改。

module.exports = {  
  root: true,
  env: {
    node: true
  },
  extends: ["plugin:vue/essential", "eslint:recommended", "@vue/prettier"],
  parserOptions: {
    ecmaVersion: 2020
  },
  rules: {
    "no-console": process.env.NODE_ENV === "production" ? "warn" : "off",
    "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off"
  }
};

我注意到错误实际上是指这一行。有人知道这有什么问题吗?

<!DOCTYPE html>

我遇到过类似的问题。这是由 <!DOCTYPE html>.

引起的

修复很简单,我们需要在 prettierrc 中指定一个解析器,虽然很明显:

overrides:
  - files: '*.html'
    options:
      parser: 'html'
  - files: '*.component.html'
    options:
      parser: 'angular'

之后 prettier 可以使用 <!DOCTYPE html>.

格式化文件

积分转到 krave1986