vue/no-parsing-error
禁止在
<template>
中出现解析错误
- ⚙️ 此规则包含在所有
"plugin:vue/vue3-essential"
、*.configs["flat/essential"]
、"plugin:vue/essential"
、*.configs["flat/vue2-essential"]
、"plugin:vue/vue3-strongly-recommended"
、*.configs["flat/strongly-recommended"]
、"plugin:vue/strongly-recommended"
、*.configs["flat/vue2-strongly-recommended"]
、"plugin:vue/vue3-recommended"
、*.configs["flat/recommended"]
、"plugin:vue/recommended"
和*.configs["flat/vue2-recommended"]
中。
此规则报告 <template>
中的语法错误。例如
- 指令中脚本的语法错误。
- Mustache 语法中的脚本语法错误。
- HTML 的语法错误。
- 无效的结束标签。
- 结束标签中的属性。
- ...
- 另请参阅:WHATWG HTML 规范
📖 规则详情
此规则尝试使用解析 <script>
的解析器来解析 <template>
中的指令/mustache 语法。然后报告是否存在语法错误。
🔧 选项
json
{
"vue/no-parsing-error": ["error", {
"abrupt-closing-of-empty-comment": true,
"absence-of-digits-in-numeric-character-reference": true,
"cdata-in-html-content": true,
"character-reference-outside-unicode-range": true,
"control-character-in-input-stream": true,
"control-character-reference": true,
"eof-before-tag-name": true,
"eof-in-cdata": true,
"eof-in-comment": true,
"eof-in-tag": true,
"incorrectly-closed-comment": true,
"incorrectly-opened-comment": true,
"invalid-first-character-of-tag-name": true,
"missing-attribute-value": true,
"missing-end-tag-name": true,
"missing-semicolon-after-character-reference": true,
"missing-whitespace-between-attributes": true,
"nested-comment": true,
"noncharacter-character-reference": true,
"noncharacter-in-input-stream": true,
"null-character-reference": true,
"surrogate-character-reference": true,
"surrogate-in-input-stream": true,
"unexpected-character-in-attribute-name": true,
"unexpected-character-in-unquoted-attribute-value": true,
"unexpected-equals-sign-before-attribute-name": true,
"unexpected-null-character": true,
"unexpected-question-mark-instead-of-tag-name": true,
"unexpected-solidus-in-tag": true,
"unknown-named-character-reference": true,
"end-tag-with-attributes": true,
"duplicate-attribute": true,
"end-tag-with-trailing-solidus": true,
"non-void-html-element-start-tag-with-trailing-solidus": false,
"x-invalid-end-tag": true,
"x-invalid-namespace": true
}]
}
您可以通过选项禁用 HTML 语法错误。请参阅 WHATWG HTML 规范 了解 HTML 语法错误的详细信息。默认情况下,只有 non-void-html-element-start-tag-with-trailing-solidus
被禁用,因为 Vue.js 支持自闭合标签。
注意
此规则不支持所有这些错误(例如,它不会捕获有关 DOCTYPE 的错误)。
带有 x-
前缀的错误代码是此规则的原始代码,因为树构建阶段的错误尚未编纂。
x-invalid-end-tag
启用有关尚未打开的元素的结束标签的错误。x-invalid-namespace
启用有关无效xmlns
属性的错误。另请参阅 “为标记创建元素”的步骤 10。
📚 扩展阅读
🚀 版本
此规则是在 eslint-plugin-vue v3.0.0 中引入的