Prettier初體驗

前言

最近正在新作一個新的項目,準備嘗試一下社區很火的Prettier,一邊學習的同時也正好總結了一些經驗,在這裏作一些記錄json

什麼是 Prettier

Prettier 是一個代碼格式化工具,它能夠支持 JS/JSX/TS/Flow/JSON/CSS/LESS 等文件格式。數組

爲何要用 Prettier

用來替代 lint 中的一些場景,好比說分號/tab 縮進/空格/引號,這些在 lint 工具檢查出問題以後還須要手動修改,而一般這樣的錯誤都是空格或者符號之類的,這樣相對來講不太優雅,利用格式化工具自動生成省時省力。函數

如何自定義配置

Prettier 提供了一套默認的配置,那麼如何修改配置項符合咱們本身的代碼規範呢,有三種方法能夠作到工具

  1. .prettierrc 文件學習

  2. prettier.config.js 文件ui

  3. package.json 中配置 prettier 屬性es5

Prettier 會檢查配置文件並自動讀取文件中的配置,咱們只須要選一種方法配置就行了,我如今選的是第二種。 是否是有種感受跟 lint 工具很像呢?spa

集成 VS CODE

只須要下載 prettier 的插件就能夠了,在插件市場搜索能夠直接搜索到插件

下面是愉快使用的相關配置代碼規範

editor.formatOnPaste: Boolean //粘貼時自動格式化

editor.formatOnSave: Boolean //保存時自動格式化

editor.formatOnType: Boolean //鍵入一行後是否格式化

editor.formatOnSaveTimeout: Int //保存後延時格式化
複製代碼

可配置的屬性

分享一下個人配置文件

module.exports = {
// tab縮進大小,默認爲2
tabWidth: 2,


// 使用tab縮進,默認false
useTabs: true,


// 使用分號, 默認true
semi: false,


// 使用單引號, 默認false(在jsx中配置無效, 默認都是雙引號)
singleQuote: true,


// 行尾逗號,默認none,可選 none|es5|all
// es5 包括es5中的數組、對象
// all 包括函數對象等全部可選
TrailingCooma: "none",


// 對象中的空格 默認true
// true: { foo: bar }
// false: {foo: bar}
bracketSpacing: true,


// JSX標籤閉合位置 默認false
// false: <div
// className=""
// style={{}}
// >
// true: <div
// className=""
// style={{}} >
jsxBracketSameLine:false,


// 箭頭函數參數括號 默認avoid 可選 avoid| always
// avoid 能省略括號的時候就省略 例如x => x
// always 老是有括號
arrowParens: 'always',

}

複製代碼
相關文章
相關標籤/搜索