vetur不能帮我们自动格式化,好在
package.json命令里还有一个
lint命令,我们看看
lint命令能不能帮我们自动格式化:
lint居然说没有错误!明明就是多了很多空格的错误好吧,为什么?这是因为缺省的
vue-cli没有为我们安装
@vue/prettier插件,我们先来手工安装一下:
yarn add -D @vue/eslint-config-prettier然后在
package.json或者
.eslintrc.js或者其它什么你设置
eslint的地方,给它加上:
"extends": [
"plugin:vue/essential",
"eslint:recommended",
"@vue/prettier"
],特别是最后这一个
@vue/prettier,非常重要。然后再执行
yarn lint。多余的空格被自动干掉了,但是我们发现有一些地方同时也被篡改了:
所有的单引号被变成双引号了,原本行尾没有的分号被加上了分号。这是为什么呢?因为我们虽然引入了
prettier,但是还没有对
prettier做设置,我们在项目的根目录下创建一个
.prettierrc.js文件,然后在其中加入:
module.exports = {
semi: false,
singleQuote: true
}再次执行
yarn lint,现在我们看到
lint已经能够起作用了。它不但能把我们多余插入的空格删掉,并且能按照规则把双引号变成单引号,把行尾多余的分号删掉。当然,关于行尾加不加分号这是一个哲学命题,你可以根据你个人的喜好自行决定。在这里,我们权且按照vue-cli的标配执行。
到这一步很关键,假设你拿到一个烂的不再烂的
vue项目,里面有几千个
.vue文件,几万个各种格式错误,也都能通过
yarn lint










