prettier.config.js 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. 'use strict';
  2. module.exports = {
  3. singleQuote: true,
  4. printWidth: 280,
  5. // tabWidth: 2,
  6. };
  7. // module.exports = {
  8. // // 1.一行代码的最大字符数,默认是80(printWidth: <int>)
  9. // printWidth: 80,
  10. // // 2.tab宽度为2空格(tabWidth: <int>)
  11. // tabWidth: 2,
  12. // // 3.是否使用tab来缩进,我们使用空格(useTabs: <bool>)
  13. // useTabs: false,
  14. // // 4.结尾是否添加分号,false的情况下只会在一些导致ASI错误的其工况下在开头加分号,我选择无分号结尾的风格(semi: <bool>)
  15. // semi: false,
  16. // // 5.使用单引号(singleQuote: <bool>)
  17. // singleQuote: true,
  18. // // 6.object对象中key值是否加引号(quoteProps: "<as-needed|consistent|preserve>")as-needed只有在需求要的情况下加引号,consistent是有一个需要引号就统一加,preserve是保留用户输入的引号
  19. // quoteProps: 'as-needed',
  20. // // 7.在jsx文件中的引号需要单独设置(jsxSingleQuote: <bool>)
  21. // jsxSingleQuote: false,
  22. // // 8.尾部逗号设置,es5是尾部逗号兼容es5,none就是没有尾部逗号,all是指所有可能的情况,需要node8和es2017以上的环境。(trailingComma: "<es5|none|all>")
  23. // trailingComma: 'es5',
  24. // // 9.object对象里面的key和value值和括号间的空格(bracketSpacing: <bool>)
  25. // bracketSpacing: true,
  26. // // 10.jsx标签多行属性写法时,尖括号是否另起一行(jsxBracketSameLine: <bool>)
  27. // jsxBracketSameLine: false,
  28. // // 11.箭头函数单个参数的情况是否省略括号,默认always是总是带括号(arrowParens: "<always|avoid>")
  29. // arrowParens: 'always',
  30. // // 12.range是format执行的范围,可以选执行一个文件的一部分,默认的设置是整个文件(rangeStart: <int> rangeEnd: <int>)
  31. // rangeStart: 0,
  32. // rangeEnd: Infinity,
  33. // // 18. vue script和style标签中是否缩进,开启可能会破坏编辑器的代码折叠
  34. // vueIndentScriptAndStyle: false,
  35. // // 19. endOfLine: "<lf|crlf|cr|auto>" 行尾换行符,默认是lf,
  36. // endOfLine: 'lf',
  37. // // 20.embeddedLanguageFormatting: "off",默认是auto,控制被引号包裹的代码是否进行格式化
  38. // embeddedLanguageFormatting: 'off',
  39. // }
  40. // // 14. requirePragma: <bool>,格式化有特定开头编译指示的文件 比如下面两种
  41. // /**
  42. // * @prettier
  43. // */
  44. // // or
  45. // /**
  46. // * @format
  47. // */
  48. // // 15.insertPragma: <bool> 自当插入pragma到已经完成的format的文件开头
  49. // // 16. proseWrap: "<always|never|preserve>" 文章换行,默认情况下会对你的markdown文件换行进行format会控制在printwidth以内
  50. // // 13. 指定parser,因为pretter会自动选择,所以一般不用指定(parser: "<string>" parser: require("./my-parser"))
  51. // // "babel" (via @babel/parser) Named "babylon" until v1.16.0
  52. // // "babel-flow" (same as "babel" but enables Flow parsing explicitly to avoid ambiguity) First available in v1.16.0
  53. // // "babel-ts" (similar to "typescript" but uses Babel and its TypeScript plugin) First available in v2.0.0
  54. // // "flow" (via flow-parser)
  55. // // "typescript" (via @typescript-eslint/typescript-estree) First available in v1.4.0
  56. // // "espree" (via espree) First available in v2.2.0
  57. // // "meriyah" (via meriyah) First available in v2.2.0
  58. // // "css" (via postcss-scss and postcss-less, autodetects which to use) First available in v1.7.1
  59. // // "scss" (same parsers as "css", prefers postcss-scss) First available in v1.7.1
  60. // // "less" (same parsers as "css", prefers postcss-less) First available in v1.7.1
  61. // // "json" (via @babel/parser parseExpression) First available in v1.5.0
  62. // // "json5" (same parser as "json", but outputs as json5) First available in v1.13.0
  63. // // "json-stringify" (same parser as "json", but outputs like JSON.stringify) First available in v1.13.0
  64. // // "graphql" (via graphql/language) First available in v1.5.0
  65. // // "markdown" (via remark-parse) First available in v1.8.0
  66. // // "mdx" (via remark-parse and @mdx-js/mdx) First available in v1.15.0
  67. // // "html" (via angular-html-parser) First available in 1.15.0
  68. // // "vue" (same parser as "html", but also formats vue-specific syntax) First available in 1.10.0
  69. // // "angular" (same parser as "html", but also formats angular-specific syntax via angular-estree-parser) First available in 1.15.0
  70. // // "lwc" (same parser as "html", but also formats LWC-specific syntax for unquoted template attributes) First available in 1.17.0
  71. // // "yaml" (via yaml and yaml-unist-parser) First available in 1.14.0
  72. // // 17. htmlWhitespaceSensitivity: "<css|strict|ignore>" html中的空格敏感性
  73. // // 针对不同文件或目录设置不同配置的方法,json格式例子
  74. // // {
  75. // // "semi": false,
  76. // // "overrides": [
  77. // // {
  78. // // "files": "*.test.js",
  79. // // "options": {
  80. // // "semi": true
  81. // // }
  82. // // },
  83. // // {
  84. // // "files": ["*.html", "legacy/**/*.js"],
  85. // // "options": {
  86. // // "tabWidth": 4
  87. // // }
  88. // // }
  89. // // ]
  90. // // }