溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

eslint如何在vue-cli中使用

發(fā)布時間:2021-04-01 17:30:28 來源:億速云 閱讀:242 作者:Leah 欄目:web開發(fā)

本篇文章為大家展示了eslint如何在vue-cli中使用,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

vue-cli的eslint相關(guān)

vue-cli在init初始化時會詢問是否需要添加ESLint,確認(rèn)之后在創(chuàng)建的項目中就會出現(xiàn).eslintignore和.eslintrc.js兩個文件。

  • .eslintignore類似Git的.gitignore用來忽略一些文件不使用ESLint檢查。

  • .eslintrc.js是ESLint配置文件,用來設(shè)置插件、自定義規(guī)則、解析器等配置。

.eslintrc.js

// http://eslint.org/docs/user-guide/configuring

module.exports = {
 root: true,
 parser: 'babel-eslint',
 parserOptions: {
  sourceType: 'module'
 },
 env: {
  browser: true,
 },
 // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style
 extends: 'standard',
 // required to lint *.vue files
 plugins: [
  'html'
 ],
 // add your custom rules here
 'rules': {
  // allow paren-less arrow functions
  'arrow-parens': 0,
  // allow async-await
  'generator-star-spacing': 0,
  // allow debugger during development
  'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0
 }
}

解析器(parser):使用了babel-eslint,這個可以在package.json中找到,說明我們已經(jīng)安裝過該解析器了。

環(huán)境配置(env):在瀏覽器中使用eslint。

繼承(extends):該配置文件繼承了standard規(guī)則,具體規(guī)則自己看文檔,看不懂有中文版的。

規(guī)則(rules):對于三個自定義規(guī)則,我特地查了官方文檔。

  • arrow-parems 允許箭頭函數(shù)參數(shù)使用括號,具體操作請看文檔

  • generator-star-spacing 允許方法之間加星號,如function * generator() {}。文檔在此。特地查了下,發(fā)現(xiàn)這是ES6提供的生成器函數(shù),回頭學(xué)習(xí)下。

  • no-debugger' 允許在開發(fā)環(huán)境下使用debugger。這個比較簡單,不過還是貼下文檔便于查看。

注意:在rules中每個配置項后面第一個值是eslint規(guī)則的錯誤等級。

* “off” 或 0 - 關(guān)閉這條規(guī)則
* “warn” 或 1 - 違反規(guī)則會警告(不會影響項目運行)
* “error” 或 2 - 違反規(guī)則會報錯(屏幕上一堆錯誤代碼~)

遇到過的問題

由于一開始我不了解ESLint就寫項目,不知道要看Standard的文檔,所以遇到了很多ESLint的錯誤和警告,分享下希望能對朋友們有幫助。

1. Do not use ‘new' for side effects

該錯誤是由于我刪除了/* eslint-disable no-new*/這段注釋引發(fā)的,/* eslint-disable */這段注釋的作用就是不讓eslint檢查注釋下面的代碼。

new Vue({
 el: '#app',
 router,
 template: '<App/>',
 components: { App }
})

錯誤原因:不可以直接new一個新對象,需要將新對象賦值給一個變量。

var vm = new Vue()

2. Strings must use singlequote

錯誤原因:字符串必須用單引號

return {
   msg: "Welcome to Your Vue.js App", //雙引號,報錯!
  }

3. Expected space(s) after “return”

錯誤原因:括號兩側(cè)必須要有空格隔開

return{// 沒有空格報錯
 msg: 'Welcome to Your Vue.js App', 
}

startClock (){} //){中間沒有空格,報錯!

4. Expected indentation of 8 spaces but found 6

錯誤原因:使用兩個空格進行縮進。

   if (this.IntervalID === '') {
   this.IntervalID = setInterval(this.countDown, 1000)
   }

其實ESLint的報錯并不難懂,只要理解錯誤原因還是很好解決的。如果提前看看文檔,更不會出現(xiàn)太多報錯問題了。這個故事告訴我們看文檔是很重要滴~%>_<%

Tips

發(fā)現(xiàn)ESLint的報錯都會在報錯語句前面顯示一個URL,點擊進去可以看到詳細(xì)的錯誤信息哦。這是我剛在寫博客的時候發(fā)現(xiàn)的。

 http://eslint.org/docs/rules/no-new Do not use 'new' for side effects 
 E:\Github\EfficiencyTools\EfficiencyTool-VueMobile\src\main.js:15:1
 new Vue({

上述內(nèi)容就是eslint如何在vue-cli中使用,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI