最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在vscode中統(tǒng)一vue編碼風(fēng)格的方法

 更新時(shí)間:2018年02月22日 08:48:59   作者:樓教主  
本篇文章主要介紹了在vscode中統(tǒng)一vue編碼風(fēng)格的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

vetur 很多人知道,但在 vscode 下沒(méi)辦法格式化 .vue 里的 html, js 很是頭疼,代碼風(fēng)格無(wú)法統(tǒng)一。

所以不少人直接拆分開,然后在 .vue 中引入,雖然方法很好,但這有違 .vue 單文件組件的初衷。

本文詳細(xì)介紹 vscode 下使用 vetur + prettier + eslint 來(lái)統(tǒng)一 vue 編碼風(fēng)格。

vetur 插件

vetur 經(jīng)過(guò)多個(gè)版本迭代,算是目前 vscode 下最好用的 vue 插件了,甚至支持 ts, webpack alias 等特性。

但有幾個(gè)功能不是直接支持,需要手動(dòng)配置,而且有幾個(gè)功能需要其他插件配置后才能配合他完成。

這就有點(diǎn)麻煩了,新手同學(xué)們往往就是死在這里。

1. 配置 eslint

prettier 覆蓋 vscode 默認(rèn)格式化快捷鍵,但沒(méi)有針對(duì) eslint 配置進(jìn)行格式化,所以需要單獨(dú)配置用戶設(shè)置開啟。

找到 首選項(xiàng) -> 設(shè)置 菜單,在右側(cè) 用戶配置 中添加 "prettier.eslintIntegration": true 開啟 eslint 支持。

至此,可以對(duì) js 文件采用 eslint 規(guī)范進(jìn)行格式化了,但 .vue 文件還不行,因?yàn)樗徽J(rèn)識(shí)這是個(gè)什么東西。

在 用戶設(shè)置 中添加如下配置,以支持 .vue 文件。

"eslint.validate": [
 "javascript",
 "javascriptreact",
 {
  "language": "vue",
  "autoFix": true
 }
]

現(xiàn)在 eslint 認(rèn)識(shí) vue 了,但這只是 eslint 認(rèn)識(shí),prettier 依然不認(rèn)識(shí)這是什么東西。

所以我們要加上 "eslint.autoFixOnSave": true 配置,在保存文件時(shí),自動(dòng)fix里面的js代碼。

2. 配置 prettier

雖然 eslint 可以處理 vue 文件了,但卻跟 prettier 的格式化沖突,因?yàn)?prettier 不知道這是什么東西。

安裝了 vetur 插件后,prettier 知道 .vue 原來(lái)是一個(gè) html 格式文件的,但依然沒(méi)辦法很好的格式化。

PS:目前 vetur 不支持 prettier 的 eslint。

因?yàn)?html 包括了 html+script+style 3部分,prettier 只能采用默認(rèn)的格式化規(guī)范去格式化,不支持eslint,而且默認(rèn)也不格式化 html。

剛才開啟的 "prettier.eslintIntegration": true 只是針對(duì) .js 文件的,而不是針對(duì) .vue 文件。

所以當(dāng)你格式化 .vue 文件時(shí)候,stript 部分可能會(huì)跟你的 eslint 風(fēng)格不一致,你需要單獨(dú)配置。

例如我的eslint 規(guī)范,字符串單引號(hào),對(duì)象末尾項(xiàng)也有逗號(hào)。

// 強(qiáng)制單引號(hào)
"prettier.singleQuote": true,
// 尾隨逗號(hào)
"prettier.trailingComma": "all",

如果你是雙引號(hào),而且不加末尾逗號(hào)的,就不必配置了。

或者你覺(jué)得無(wú)傷大雅,也不用配置這個(gè),反正保存時(shí) eslint 自動(dòng)fix了。

3. 配置 vetur 對(duì) html 的格式化

因?yàn)?vetur 就是把 .vue 中的 html+script+style 3部分拆分,然后交給對(duì)應(yīng)的語(yǔ)言處理器去處理。

例如:

html 可以是 html,也可以是 pug, jade 等。

script 可以是 es5, es6, ts, coffee。

style 可以是 css, less, sass, postcss 等。

除了 html 部分,其他都默認(rèn)采用 prettier 格式化。

如果需要 html 的格式化,則需手動(dòng)配置。

// 使用 js-beautify-html 插件格式化 html
"vetur.format.defaultFormatter.html": "js-beautify-html",
// 格式化插件的配置
"vetur.format.defaultFormatterOptions": {
 "js-beautify-html": {
  // 屬性強(qiáng)制折行對(duì)齊
  "wrap_attributes": "force-aligned",
 }
}

完成收工

至此,配置完成,完整配置如下:

{
 // 強(qiáng)制單引號(hào)
 "prettier.singleQuote": true,
 // 盡可能控制尾隨逗號(hào)的打印
 "prettier.trailingComma": "all",
 // 開啟 eslint 支持
 "prettier.eslintIntegration": true,
 // 保存時(shí)自動(dòng)fix
 "eslint.autoFixOnSave": true,
 // 添加 vue 支持
 "eslint.validate": [
  "javascript",
  "javascriptreact",
  {
   "language": "vue",
   "autoFix": true
  }
 ],
 // 使用插件格式化 html
 "vetur.format.defaultFormatter.html": "js-beautify-html",
 // 格式化插件的配置
 "vetur.format.defaultFormatterOptions": {
  "js-beautify-html": {
   // 屬性強(qiáng)制折行對(duì)齊
   "wrap_attributes": "force-aligned",
  }
 }
}

現(xiàn)在你可以在 .vue 中格式化 html+js+css 了。

但 js 部分格式化不是根據(jù) eslint 格式化的,上面有解釋。

js 部分只能采用 prettier 默認(rèn)格式,然后保存的時(shí)候自動(dòng) fix,來(lái)達(dá)到 prettier+eslint 的效果。

如果需要詳細(xì)配置,可以訪問(wèn) vetur 官方文檔 https://vuejs.github.io/vetur

小結(jié)

主要解決了 prettier 不格式化 .vue 內(nèi)的 js 問(wèn)題,以及 prettier 格式化時(shí)跟 eslint 自動(dòng) fix 風(fēng)格沖突問(wèn)題。

當(dāng)然,prettier格式化 和 eslint的fix 有本質(zhì)區(qū)別,但 prettier + 自動(dòng)fix,就完美了。

對(duì)于 .js 來(lái)說(shuō),prettier 開啟 eslint 支持,直接完美。

但 .vue 只能這樣配置了,因?yàn)槟壳?vetur 也沒(méi)支持,官網(wǎng)只給了這個(gè)解決方案。

或許之后就支持了呢。

其他插件推薦

  1. Auto Close Tag
  2. Auto Rename Tag
  3. Bracket Pair Colorizer
  4. Code Runner
  5. Document This
  6. EditorConfig
  7. ESLint
  8. gitignore
  9. GitLens
  10. Guides
  11. Import Cost
  12. npm intellisense
  13. Path Autocomplete
  14. Prettier
  15. Settings Sync
  16. TODO Highlight
  17. Vetur
  18. vscode-icons

我就不一一解釋了。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue3如何處理異步任務(wù)輪詢

    Vue3如何處理異步任務(wù)輪詢

    在許多應(yīng)用程序中,我們經(jīng)常需要執(zhí)行定期的異步任務(wù)輪詢,本文就介紹了Vue3如何處理異步任務(wù)輪詢,感興趣的可以了解一下
    2023-05-05
  • vue實(shí)現(xiàn)微信分享功能

    vue實(shí)現(xiàn)微信分享功能

    這篇文章主要介為大家詳細(xì)紹了vue實(shí)現(xiàn)微信分享功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • vue2過(guò)濾器模糊查詢方法

    vue2過(guò)濾器模糊查詢方法

    今天小編就為大家分享一篇vue2過(guò)濾器模糊查詢方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • vue3獲取元素并且修改元素樣式的實(shí)戰(zhàn)操作

    vue3獲取元素并且修改元素樣式的實(shí)戰(zhàn)操作

    ref作為在vue里面我們獲取元素最常用的一個(gè)api,在vue3迎來(lái)改造,下面這篇文章主要給大家介紹了關(guān)于vue3獲取元素并且修改元素樣式的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • vue中注冊(cè)自定義的全局js方法

    vue中注冊(cè)自定義的全局js方法

    這篇文章主要介紹了vue中注冊(cè)自定義的全局js方法,文中給大家補(bǔ)充介紹了vue自定義函數(shù)掛到全局的方法,需要的朋友可以參考下
    2019-11-11
  • vue watch如何深度監(jiān)聽(tīng)數(shù)組每一項(xiàng)的變化

    vue watch如何深度監(jiān)聽(tīng)數(shù)組每一項(xiàng)的變化

    這篇文章主要介紹了vue watch如何深度監(jiān)聽(tīng)數(shù)組每一項(xiàng)的變化問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Vue配置proxy代理接口報(bào)錯(cuò)2007 bad domain的解決

    Vue配置proxy代理接口報(bào)錯(cuò)2007 bad domain的解決

    本文主要介紹了Vue配置proxy代理接口報(bào)錯(cuò)2007 bad domain的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • vue中使用protobuf的過(guò)程記錄

    vue中使用protobuf的過(guò)程記錄

    由于目前公司采用了ProtoBuf做前后端數(shù)據(jù)交互,進(jìn)公司以來(lái)一直用的是公司大神寫好的基礎(chǔ)庫(kù),完全不了解底層是如何解析的。下面小編給大家分享vue中使用protobuf的過(guò)程記錄,需要的朋友參考下吧
    2018-10-10
  • 一文了解vue-router之hash模式和history模式

    一文了解vue-router之hash模式和history模式

    這篇文章主要介紹了一文了解vue-router之hash模式和history模式,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • 十分鐘帶你讀懂Vue中的過(guò)濾器

    十分鐘帶你讀懂Vue中的過(guò)濾器

    過(guò)濾器提供給我們的一種數(shù)據(jù)處理方式。過(guò)濾器功能不是必須要使用的,因?yàn)樗鶎?shí)現(xiàn)的功能也能用計(jì)算屬性或者函數(shù)調(diào)用的方式來(lái)實(shí)現(xiàn)。這篇文章主要為大家介紹了Vue中過(guò)濾器的使用,需要的可以了解一下
    2023-03-03

最新評(píng)論

嘉义县| 霍林郭勒市| 峨眉山市| 多伦县| 青河县| 宜章县| 大兴区| 邹城市| 平乡县| 宁津县| 轮台县| 松原市| 山东省| 海南省| 宣恩县| 永胜县| 昔阳县| 通化市| 兴国县| 肇庆市| 保靖县| 上蔡县| 滨州市| 余江县| 新建县| 泰兴市| 涿州市| 泸水县| 曲靖市| 巩留县| 宜黄县| 界首市| 凤台县| 永宁县| 资中县| 舞钢市| 确山县| 布尔津县| 广平县| 贺兰县| 泰宁县|