在我安装并启用了ESlint和Prettier的Nuxt应用程序中,我切换到Visual Studio Code。
当我打开一个.vue文件并按CMD+ Shift + P并选择格式化文档时,我的文件根本没有被格式化。
我的.prettierrc设置:
{
"tabWidth": 2,
"semi": false,
"singleQuote": true
}
我有这么多源代码行,所以我不能手动格式化它们。我做错了什么?
在我安装并启用了ESlint和Prettier的Nuxt应用程序中,我切换到Visual Studio Code。
当我打开一个.vue文件并按CMD+ Shift + P并选择格式化文档时,我的文件根本没有被格式化。
我的.prettierrc设置:
{
"tabWidth": 2,
"semi": false,
"singleQuote": true
}
我有这么多源代码行,所以我不能手动格式化它们。我做错了什么?
当前回答
我没有使用Vue,但遇到了同样的问题。
我已经设置好了
编辑器:用于更漂亮的默认格式化器 编辑器:格式保存为true 我已经有了。eslintrc.js和。prettierrc文件 但是什么都不管用。
我的问题的解决方案是,我已经正确设置,除了我需要:
Command + Shift + p 输入格式文件 select Configure Default Formatter… 选择pretty作为默认值。
我不知道为什么编辑器:保存的格式设置为true是不够的。 我需要使用上面的步骤选择默认格式化器,这样它就可以工作了。
其他回答
在我的案例中,我必须做到以下几点:
从命令行安装prettier (npm Install——save-dev——save-exact prettier-plugin-custom) 重载VSCode
voilà,一切都开始运转了。
提示: 为了确保安装良好,我检查了版本:
npx prettier --version
有一些语法是pretty无法解析的。?? 是其中之一。去掉那个符号后,我的美女就像施了魔法一样。你应该看看vscode中Prettier扩展的输出。这应该指出的行和语法是造成的问题,更漂亮的格式正确。
进入管理(位于左下角)->设置->用户选项卡->文本编辑器->格式->检查保存的格式
如果不能工作,请关闭并再次打开vscode编辑器
这里我的漂亮配置工作在vue.js文件,typescript文件和json文件。
arrowParens: 'always'
bracketSpacing: true
endOfLine: 'crlf'
htmlWhitespaceSensitivity: 'css'
insertPragma: false
jsxBracketSameLine: false
jsxSingleQuote: true
overrides:
- files: '*.json'
options:
semi: true
parser: 'json'
parser: 'babel'
printWidth: 120
proseWrap: 'preserve'
quoteProps: 'truepreserve'
requirePragma: false
semi: false
singleQuote: true
tabWidth: 8
trailingComma: 'es5'
useTabs: true
vueIndentScriptAndStyle:
不要忘记更新你的vscode设置
{
"extensions.ignoreRecommendations": false,
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[vue]": {
"editor.defaultFormatter": "octref.vetur"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[html]": {
"editor.defaultFormatter": "vscode.html-language-features"
},
"vetur.format.options.useTabs": true}
那是所有人的事!
这不是pretty本身的问题,而是pretty - VSCode, VSCode扩展的问题。根据Vue的文档,Vue格式默认是禁用的:
更漂亮。disableLanguages(默认值:["vue"]) 要禁用此扩展的语言id列表。需要重新启动。注意:禁用父文件夹中启用的语言将阻止格式化,而不会让任何其他格式化程序运行
在这种情况下,启用您应该设置“更漂亮。disableLanguages”:[]。由于这是一个扩展配置,你应该在VSCode设置文件,而不是。pretierrc。