您的位置:首页 > 产品设计 > UI/UE

关于vue的语法规则检测报错问题

2017-06-29 13:40 274 查看
搭建了一个vue项目,在配置路有的时候,陆续出现了各种报错其中最多的是一些写法,例如空格,缩进,各种括号,结果我一句一句对照,修改相当之费时间,效率低,一上午,一个路由配置都没写好

主要报错如下:



截取了一段常见报错,选取其中一个:

Expected indentation of 4 spaces but found 1 tab

翻译一下,意思是:预期缩进4个空格,但找到1个选项卡。意思是vue在检测写法规则的时候,只认空格,不认tab的缩进,这时你就要修改的页面内容,把tab换成空格,这样就比较麻烦,然鹅各种查找原因,找到了解决方案,如下:

一,找到目录build下的webpack.base.conf.js文件,把其中的rules里的这一段注销掉:





保存,然后重新npm run dev 一下:



报错虽然不见了,但是这样做的弊端是,强行停止一切检错功能,很多语法错误检测不出,在初期,是不建议这么做的,更加不利于代码的可读行以及规范性。那么就要寻找另一个办法,只是更改一下规则里的配置。

二,这就用到了另一个配置文件:test目录下的.eslintrc.js文件(推荐)





添加你的自定义规则,然后推荐大家熟悉一下ESLint 规则

规则

在配置文件中可以设置一些规则。

规则的错误等级有三种:

“off” 或者 0:关闭规则。

“warn” 或者 1:打开规则,并且作为一个警告(不影响exit code)。

“error” 或者 2:打开规则,并且作为一个错误(exit code将会是1)。

为了让你对规则有个更好的理解,ESLint 对其进行了分门别类。

所有的规则默认都是禁用的。在配置文件中,使用 “extends”: “eslint:recommended” 来启用推荐的规则,报告一些常见的问题,在下文中这些推荐的规则都带有一个标记。

Possible Errors对照着来自定义规则配置

以上面提到的报错为例,是跟空格缩进有关,找到相关规则提示:



然后到rules里,手动添加’no-mixed-spaces-and-tabs’,然后定义为0,关闭规则

// 在这里添加自定义规则
'rules': {
// allow paren-less arrow functions
'arrow-parens': 0,
// allow async-await
'generator-star-spacing': 0,
// 禁止空格和 tab 的混合缩进
'no-mixed-spaces-and-tabs':0,
// allow debugger during development
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0
}


好了,保存刷新,你会发现报错不再提示,这样做的好处是,挑选需要忽略的规则
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: