在我安装并启用了ESlint和Prettier的Nuxt应用程序中,我切换到Visual Studio Code。

当我打开一个.vue文件并按CMD+ Shift + P并选择格式化文档时,我的文件根本没有被格式化。

我的.prettierrc设置:

{
  "tabWidth": 2,
  "semi": false,
  "singleQuote": true
}

我有这么多源代码行,所以我不能手动格式化它们。我做错了什么?


当前回答

我需要做的唯一一件事就是用简单的更新包

npm install

我试了这里所有的东西,还是不行。就好像它不存在一样。pretty也作为依赖项添加到项目中。原来是其他人添加或更新了任何软件包,导致我的美容器停止工作。

希望能让别人免去我的头疼。

其他回答

这不是pretty本身的问题,而是pretty - VSCode, VSCode扩展的问题。根据Vue的文档,Vue格式默认是禁用的:

更漂亮。disableLanguages(默认值:["vue"]) 要禁用此扩展的语言id列表。需要重新启动。注意:禁用父文件夹中启用的语言将阻止格式化,而不会让任何其他格式化程序运行

在这种情况下,启用您应该设置“更漂亮。disableLanguages”:[]。由于这是一个扩展配置,你应该在VSCode设置文件,而不是。pretierrc。

我没有使用Vue,但遇到了同样的问题。

我已经设置好了

编辑器:用于更漂亮的默认格式化器 编辑器:格式保存为true 我已经有了。eslintrc.js和。prettierrc文件 但是什么都不管用。

我的问题的解决方案是,我已经正确设置,除了我需要:

Command + Shift + p 输入格式文件 select Configure Default Formatter… 选择pretty作为默认值。

我不知道为什么编辑器:保存的格式设置为true是不够的。 我需要使用上面的步骤选择默认格式化器,这样它就可以工作了。

在Windows上:

我们可以使用以下命令打开下面的文件:

Start > Run 

文件路径:

%AppData%\Code\User\settings.json

改变 来自:

"[javascript]": {
    "editor.defaultFormatter": "vscode.typescript-language-features"
},

To:

"[javascript]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
},

注意:

如果上述内容不存在,请添加而不是更改。 您应该已经安装了“更漂亮的代码格式化器”,以查看上述更改的效果- https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode

在不太可能的情况下,上述解决方案都不适合你(像我一样),我不得不在设置中将默认格式化器设置为null,然后按CTRL + SHIFT + P并搜索“格式文档”(默认格式文档绑定+R对我不起作用),然后我被提示在弹出窗口中选择默认格式化器,在选择更漂亮的格式后,它格式化了文档,现在也保存了格式

检查你的包裹。Json文件的属性为prettier,因为这将优先。

{
  "name": "example",
  "scripts": { ... },

  "prettier": {},

  "dependencies": { ... },
  "devDependencies": { ... },
}

删除此属性,将使用. pretierrc文件。

优先级的顺序在更漂亮的文档中说明。