【简易教程】基于Vue-cli使用eslint指南

插件安装

首先在vscode插件中搜索eslintprettier

啥也不管,这俩必须得装。

插件简介

vscode插件库里的eslint是用来在你写代码的时候就直接给你报错。(vue-cli中的eslint是在浏览器中报错)

prettier是代码格式化插件,用来辅助eslint,否则你调了花半天,一格式化全没有。

实战演练

# 创建一个vue项目 vue-cli@2.9.6,更高版本请使用create创建项目。
vue init webpack eslint_test

eslint那一栏请选择none,这样vue-cli会帮你下载eslint,并进行一些基本的配置。

但是不会帮你设置rules(rules就是各种代码规范的不允许)。

下载好后目录结构如下:

文件介绍

里面有两个文件非常重要。

.eslintignore 和 .eslintrc.js

.eslintignore ,见名知意,ignore 忽视一些文件。即在文件里面规定的不会被eslint进行检查。

例如这里面不会对/build/文件下面的文件做语法检查。

.eslintrc.js ,是eslint能起作用的根本。vue-cli里面eslintvscode里的eslint都以这个文件为判定标准。

补充文件

我们得在根目录下新建一个.prettierrc文件。

.prettierrc,是prettier格式化的配置文件,建议用json格式书写。

例如你如果配置下面样式。

{// 采用分号"semi": true,// 采用单引号"singleQuote": true,// tab采用两个空格长度"tabWidth": 2
}

格式化过程就会像下图所示:

双引号自动改成单引号,没加的分号,自动补齐。

Eslint.js配置

上文中说过,.eslintrc.js是eslint起作用的关键文件,所以我们必须学会进行一些配置。

如果安装eslint的时候选择none,.eslintrc.js文件应该和下面是一样的。

// https://eslint.org/docs/user-guide/configuringmodule.exports = {root: true,parserOptions: {parser: 'babel-eslint'},env: {browser: true,},// https://github.com/vuejs/eslint-plugin-vue#priority-a-essential-error-prevention// consider switching to `plugin:vue/strongly-recommended` or `plugin:vue/recommended` for stricter rules.extends: ['plugin:vue/essential'],// required to lint *.vue filesplugins: ['vue'],// add your custom rules hererules: {// allow debugger during development'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'}
}

上面最重要的模块就是rules模块。它是给我们来设定一些eslint的规则的。

例如我在rules里面添加一条规则’no-var’: [‘error’],此时我们就不能在程序中使用var来定义变量了。

只能使用let来定义变量,const来定义常量。

rules: {// allow debugger during development'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off','no-var': ['error'],},

例如下图中,我写了var a = 1;它直接报错了。

其他的也与之类似。附常用rule:

 rules: {// allow debugger during development'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off','no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',// 尾随逗号规则'comma-dangle': ['error',{arrays: 'always',objects: 'always',imports: 'never',exports: 'never',functions: 'never',},],// 禁止使用var规则'no-var': ['error'],// 必须使用分号semi: ['error', 'always'],// 必须使用单引号quotes: ['error', 'single'],// 必须使用两个空格进行缩进indent: ['error', 2],},

附录官网

prettier官网 https://prettier.io/docs/en/configuration.html

eslint官网 https://eslint.bootcss.com/docs/rules/

airbnb中文文档 https://github.com/BingKui/javascript-zh#functions

【简易教程】基于Vue-cli使用eslint指南相关推荐

  1. 基于vue cli 3.0创建前端项目并安装cube-ui

    前提条件: 安装node.js. 国内的开发者最好先配置淘宝镜像. 之后用cnpm来代替npm命令. 项目创建过程: 打开cmd,输入命令进入目标工作空间,以本机项目为例: cd /d d: cd D ...

  2. vue项目通过命令行传参实现多环境配置(基于@vue/cli)

    大多数项目都有生产环境和开发环境,一般情况下应该够了,但是有时候还需要sit,uat,本地等环境,这时候假如要通过注释的方式切换环境就相当麻烦了. 如果可以像下面这样切换环境就方便了 npm run ...

  3. 原创:Spring整合junit测试框架(简易教程 基于myeclipse,不需要麻烦的导包)

    我用的是myeclipse 10,之前一直想要用junit来测试含有spring注解或动态注入的类方法,可是由于在网上找的相关的jar文件进行测试,老是报这样那样的错误,今天无意中发现myeclips ...

  4. 怎么把HTML网页重构为VUE,基于vue cli重构多页面脚手架过程详解

    官方提供的项目生成工具vue-cli没有对多页面webApp的支持,但是在实际的项目中,我们需要这样的脚手架,参考了很多大牛的方法,这里提供了一种我的单页面脚手架转换为多页面脚手架的方案,供大家参考. ...

  5. cli vue 卸载,vue Cli 环境删除与重装教程 - 版本文档

    vue-cli 卸载,版本选择,安装 · 检测(图文教程:vue Cli 环境删除与重装) 重要说明: vue-cli 3.0+版本,使用的不是vue-cli,而是@vue/cli: 如果用以上的安装 ...

  6. Vue CLI 3结合Lerna进行UI框架设计

    第一次在掘金发文章,有点啰里啰嗦,大家见谅. 当前大部分UI框架设计的Webpack配置都相对复杂,例如Element.Ant Design Vue和Muse-UI等Vue组件库.例如Element, ...

  7. linux 使用ssr客户端_【第一期】基于 @vue/cli3 与 koa 创建 ssr 工程

    什么是基于同构代码的 SSR 服务(Server-side rendering based on isomorphic code) 首先,我们需要先明白什么是 spa (single page app ...

  8. vue Cli 环境删除与重装 - 版本文档

    文章目录 vue-cli 卸载,版本选择,安装 · 检测(图文教程:vue Cli 环境删除与重装) 重要说明: vue-cli 的 `卸载:` vue-cli 的 `安装:` Vue CLI 官方介 ...

  9. eslint不报错 vue_【简易教程】基于Vue-cli使用eslint指南

    插件安装 首先在vscode插件中搜索eslint和prettier. 啥也不管,这俩必须得装. 插件简介 vscode插件库里的eslint是用来在你写代码的时候就直接给你报错.(vue-cli中的 ...

最新文章

  1. openstack整合ceph
  2. netty 之 telnet HelloWorld 详解
  3. Linux——查看硬件配置命令
  4. python怎么导入大小字母_isort-用于对python导入的库按照字母进行排序的工具
  5. 简明易懂的c#入门指南_统计假设检验的简明指南
  6. jQuery常用方法总结(转)
  7. python实现邮件客户端_python socket实现web服务器,邮件客户端
  8. 关于iOS 6 中的一些“xxxxxx” is deprecated 问题的解决办法
  9. 双系统重装Ubuntu经验分享
  10. Unable to execute diff program: WinDiff 【SourceOffSite】
  11. 游戏开发人员需要了解的5种ASO技术,苹果游戏aso优化
  12. Python教你一键获得【王者荣耀全皮肤】~~~
  13. signature=735f4378ec01919f23285d0d2557be19,OPENSSL编程 第二十章 椭圆曲线
  14. 桐桐的新闻系统【模拟】
  15. 解决.bat文件打开是记事本的问题
  16. 庄子 汝身非汝有也。
  17. 颈椎护理小助手,轻松缓解颈部酸痛,宾多康智能颈枕按摩器体验
  18. python数据统计分析
  19. 【Git下载安装与环境配置】
  20. Bugzilla一些权限设置(bug,项目的权限)

热门文章

  1. TortoiseSVN新人使用指南
  2. SQLite学习手册(表达式)
  3. 香帅的北大金融学课笔记6 -- 货币基金
  4. 第四范式与赛诺贝斯达成战略合作,开启MarTech新篇章
  5. 我的世界minecraft-Python3.9编程(3)-创建一根柱子
  6. 【重点EI会议推荐】机器学习主题方向论文征稿:2021计算机、物联网与控制工程国际学术会议(CITCE 2021)...
  7. 【机器学习】盘点Kaggle中常见的AutoML工具库及用法
  8. 【深度学习】一文看懂 (Transfer Learning)迁移学习(pytorch实现)
  9. 推荐五篇论文| 轻量级的Transformer; 对比学习;ResNeSt;Shortcut Learning等
  10. 基于深度学习的CTR模型DeepCTR 更新啦!