想象一下,您拥有带有以下模板的“ SFC”:
想象一下,您可以使用更漂亮的/ eslint设置,并且可以使用以下命令来整理任何文件:
eslint --ext "*.html, *.js, *.vue, *.ts" $FilePath$ --fix --no-ignore
哪种格式的.vue,.js甚至.ts文件都可以,但是如果您将其用于单独的vue-template,则该文件具有.html扩展名,但实际上是包含所有v-if和其他内容的vue模板...这将不起作用,因为更漂亮的可能试图使用不正确的解析器(?)解析.html,或者也许应该有一种方法建议使用棘手的.html文件使用哪个解析器?
我当前的配置如下所示:
// .prettier.rc
{
"arrowParens": "always",
"semi": false,
"singleQuote": true
}
// .eslintrc.js
module.exports = {
root: true,
parserOptions: {
parser: 'typescript-eslint-parser',
sourceType: 'module',
jsx: true
},
env: {
browser: true
},
extends: [
'eslint:recommended',
'plugin:prettier/recommended',
'prettier/vue',
'plugin:vue/recommended'
],
plugins: [
'typescript',
// required to lint *.vue files
'vue',
'prettier'
]
}
以及使用的某些库的版本:
"babel-eslint": "8.2.6",
"eslint": "5.11.1",
"eslint-config-prettier": "3.3.0",
"eslint-friendly-formatter": "4.0.1",
"eslint-loader": "2.1.1",
"eslint-plugin-import": "2.14.0",
"eslint-plugin-node": "8.0.0",
"eslint-plugin-prettier": "3.0.0",
"eslint-plugin-promise": "^4.0.1",
"eslint-plugin-standard": "^4.0.0",
"eslint-plugin-typescript": "0.14.0",
"eslint-plugin-vue": "5.0.0",
也许有人可以给我提示,如何使用内部带有vue特定模板的更漂亮/ eslint .html文件进行格式化?
目前,对于.html来说,我既没有IDE错误也没有自动格式设置,但是对于其他所有内容(.vue,.js,.ts文件),它都可以正常工作。
对于我提到的命令,我可以看到eslint使用parser-babylon并合理地抱怨与vue有关的第一件事,例如:prop绑定。
UPD:根据我的经验,如果您尝试将vue模板提取为HTML,则说明您已经做错了。 这是避免模板复制粘贴的一种方法,但是实际上您将使用该方法创建N个相同的组件(如果您在N个SFC中重用该HTML块)。 因此,您最好采用SFC并尝试制作一个可重用的组件,而不要拥有一个可重用的HTML文件。 这样,您就不会在棉绒上遇到任何问题。