VScode中如何使用JavaScriptStandardStyle校验vue文件其实JavaScriptStandardStyle有个FAQ,里面解释了如何使用。但是有一点很重要,作者没有提到,就是eslint-plugin-html插件必须在3.x.x版本安装,现在eslint-plugin-html已经升级到4.x版本了,而且不写版本号默认安装的是4.x版本,所以会出问题。参考:详情请参考https://www.npmjs.com/package...这个ESLint插件允许linting和修复HTML文件中包含的内联脚本。迁移到v4eslint-plugin-htmlv4至少需要ESLintv4.7。这是因为ESLintv4.7中的一些内部变化,包括对自动固定在预处理器中的新API的支持。如果您仍在使用旧版本的ESLint,请考虑升级或继续使用eslint-plugin-htmlv3。eslint-plugin-htmlv4中的一个重要功能(和重大更改)是能够在同一HTML文件中的脚本标签之间选择性地共享范围。迁移到v3如果您正在考虑升级到v3,请阅读本指南。ESLintv4仅受eslint-plugin-htmlv3支持,因此您不能将eslint-plugin-htmlv1.5.2与其一起使用(当我尝试在ESLint上使用不兼容版本的插件时,我应该对此添加警告).如果您不使用ESLintv4,请提供更多信息(package.json,要重现的要点,...)//FAQHowtolintscripttaginvueorhtmlfiles?Youcanlintthemwitheslint-plugin-html,只需先安装它,然后在settings.json中为这些文件类型启用linting:{"standard.validate":["javascript","javascriptreact","html"],"standard.options":{"plugins":["html"]},"files.associations":{"*.vue":"html"}}如果你想为新语言启用自动修复,你应该自己启用它:{"standard.validate":["javascript","javascriptreact",{"language":"html","autoFix":true}],"standard.options":{"plugins":["html"]}}1、需要安装插件:npmi-gstandardnpmi-geslint-plugin-html@3.2.2这里是3x版本npmi-geslintorvscodeinstalleslint2,vscodesettings:{"standard.validate":["javascript","javascriptreact",{"language":"html","autoFix":true}],"standard.options":{"plugin":["html"]},"files.associations":{"*.vue":"html"},"standard.autoFixOnSave":true}3.vscode相关插件Prettier和eslint格式化代码:ESLint(如果全局安装,vscode可能没有安装)PrettierformatterVetur#4格式化代码相关设置{"files.autoSave":"afterDelay",“editor.fontSize”:14,“editor.tabSize”:2,“eslint.autoFixOnSave”:true,“eslint.validate”:[“javascript”,“javascriptreact”,“vue”,{“语言”:“html","autoFix":true}],"prettier.singleQuote":true,"prettier.semi":false,"editor.formatOnSave":true}5.eslintrc.js在相关根目录创建.eslintrc.jsmoduleprojects.exports={root:true,env:{node:true,},'extends':[//需要官方的eslint-plugin-vue,它支持检查.vue文件中的模板和脚本请确保在您的ESLint配置中使用插件自己的配置:'plugin:vue/essential',//标准代码规范https://github.com/standard/standard/blob/master/docs/RULES-en.md'@vue/standard'],rules:{'no-new-func':0,'no-console':process.env.NODE_ENV==='production'?'错误':'关闭','无调试器':process.env.NODE_ENV==='生产'?'error':'off',//解决iview报错的问题"vue/no-parsing-error":[2,{"x-invalid-end-tag":false}]},parserOptions:{parser:'babel-eslint'}
