vscode prettier
前言
与通过npm安装的prettier关联
vscode 的 prettier 扩展,会优先使用 你项目中明确安装的 prettier(既 npm i prettier --D) 的版本,
如果你没有安装,则会扩展使用自己 捆绑内置的 比较旧的 prettier。
内置的 prettier 版本
确定版本
VSCode Prettier插件中内置的 prettier 版本为多少怎么查看呢?
--方式 1--
注意在自己没有给项目 npm i prettier
情况下,
点击编辑器右下角的 prettier 标
,此时右键格式化任意一个文件:此时控制台就会输出当前prettier的信息,
详细输出如下:
["INFO" - 22:32:05] Formatting file:///Users/dsh/Desktop/demo/index.js
["INFO" - 22:32:05] Using config file at /Users/dsh/Desktop/demo/prettier.config.js // 本次格式化 使用的prettier配置文件
["INFO" - 22:32:05] PrettierInstance: // 本次格式化, prettier实例信息
{
"doc": {// ... },
"version": "2.8.8", // 本次格式化,使用的 prettier 核心版本
// ...
}
["INFO" - 22:32:05] Formatting completed in 14ms. // 格式化完成耗时
--方式 2--
进入 vscode prettier仓库,直接查看绑定的 prettier 版本。
存在问题
截止目前 prettier-vscode v11.0.0扩展内置的 prettier v2.8.8,这跟目前(2025.5.12) prettier最新版本3.5.0 还是有不小的差距的。
比如我们在使用扩展内置的prettier 格式化如下代码就会报错 object?.name
不支持可选链:
unknown type: "ChainExpression"
如果我们给项目安装 prettier,进而就会让插件使用该版本的prettier作为内核,在此尝试就不会报错。
配置文件
VS Code 的 Prettier 插件默认只会识别 cjs 格式 既prettier.config.js
,
如果你的项目标记了 type: module
,那么需将你的配置文件改为 prettier.config.cjs
。
否则就会遇到 error resolving prettier configuration
就没人发现吗.
当然是有的,我查阅到在prettier-vscode的 issue 上就有人讨论---
卡尔霍基:为啥 esm 配置会报错?我调查发现这是因为 VS Code 的prettier扩展内部使用了旧的 Prettier v2 。
诺埃尔福特:只能项目本身安装prettier了,这样VS Code 的prettier扩展会优先使用我们自己下载的 v3 甚至更新版本的prettier内核。
约书亚·希普特:所以, prettier的vscode 扩展,绝对是垃圾!
常见问题
配置缓存
在修改 config 文件后,prettier 插件还是使用上次的配置。
解决办法:重启 vscode!
Monorepo
针对Monorepo项目,只需要在跟项目中安装 prettier即可,其他子项目均会使用这一个!
vscode prettier的更多相关文章
- vscode 中 eslint prettier 和 eslint -loader 配置关系
前置 本文将探究 vscode prettier 插件 和 eslint 插件在 vscode 中的配置以及这两者对应的在项目中的配置文件的关系,最后提及 vscode eslint 插件配置与 es ...
- 在vscode中使用eslint+prettier格式化vue项目代码 (转载)
ESlint:javascript代码检测工具,可以配置每次保存时格式化js,但每次保存只格式化一点点,你得连续按住Ctrl+S好几次,才格式化好,自行体会~~ vetur:可以格式化html.标准c ...
- vscode添加prettier格式化自动加分号问题
在vscode的settings.json中添加: "prettier.singleQuote": true, "prettier.semi": false, ...
- [Tool] Enable Prettier in VSCode as Format on Save and add config files to gitingore
First of all, install Prettier extension: "Pettier - Code formatter". The open the VSCode ...
- 使用vscode开发vue cli 3项目,配置eslint以及prettier
初始化项目时选择eslint-config-standard作为代码检测规范,vscode安装ESLint和Prettier - Code formatter两个插件,并进行如下配置 { " ...
- vscode从听说到使用,vetur,prettier,htmljscssPrettify踩坑指南。
今天基于vue-cli(2.9.3)构建一个新的项目.我用的sublime,es6的代码格式要与公司格式兼容.采用了vue-cli自带的eslint后,有一些不统一的部分需要修改.先看看sublime ...
- VSCode 使用 ESLint + Prettier 来统一 JS 代码
环境: VSCode 1.33.1 Node.js 8.9.1 一.ESLint 1.介绍 ESLint是最流行的JavaScript Linter. Linter 是检查代码风格/错误的小工具.其他 ...
- vscode中eslint插件的配置-prettier
用vue-cli构建vue项目,会有个eslint代码检测的安装 可vscode自带代码格式化是prettier格式(右键有格式化文件或alt+shift+f) 这时候要在vscode上装一个esli ...
- vscode, eslint, prettier, vetur冲突及解决
这3工具都必须安装. 但是安装之后, 规则冲突又让人头疼. 讲下解决方案吧.一 从0开始1. 禁止工作区插件, 如下图: 2. 清空用户设置(Code–>首选项–>设置–>[右上角 ...
- vscode如何配置ts的lint,如何配置才能让eslint和prettier不冲突一键格式化代码(vue开发使用)
最近在使用ts,发觉tslint在vscode上使用很不方便,不如eslint一键格式化高效,就想着能不能配置下vscode让其像写js一样爽 这篇文章主要解决2个问题,第一个是如何让vscode使用 ...
随机推荐
- Python爬取任意城市肯德基门店信息(json数据反序列化、提取数据、写入CSV)
本案关键内容点:json数据反序列化.提取数据.写入CSV 创建csv,写入表头数据,脚本同目录下会创建名称为book的csv文件,且第一行插入表头内容 import csv f = open('bo ...
- MySQL安装入门第一篇
[1]MySQL的版本:近期主要历史版本有5.0/5.1/5.5/5.6/5.7,目前最新版本是MySQL8.6.0曾经是个内部试验版本,已取消了. MySQL8.0的版本历史 1) 2016-09- ...
- AXUI - 极致原生体验的零依赖的国产 Web UI 框架,欢迎体验和共建!
AXUI:专注于快速交付的国产 Web UI 框架 在日常的前端开发中,是否遇到过以下场景: 灵感乍现,希望快速通过一点代码实现原型或功能展示: 完全个人项目,开发方式自由,追求高效与便捷: 项目目标 ...
- 7.9K star!跨平台开发从未如此简单,这个开源框架让APP开发效率飙升!
嗨,大家好,我是小华同学,关注我们获得"最新.最全.最优质"开源项目和高效工作学习方法 Lynx 是一个革命性的跨平台开发框架,使用 TypeScript 开发即可同时构建 iOS ...
- Lucas 定理简单证明
前言 Oi wiki 和网上博客的证明都没完全看懂,最后还是自己推出来的..这里记录一下思路. Lucas 定理 对于质数 \(p\),$${n\choose m}\bmod p={\lfloor n ...
- 《OKR》| 聚焦小目标, 成就大梦想
今天想和大家分享的书籍是 <每个人的 OKR>. 恰好我司也是采用 OKR 结合 KPI 的方式进行目标和绩效管理, 在实践中通过放大目标的功能, 缩小行动的自由, 聚焦在单一方向的机制, ...
- C#窗体磁吸屏幕的两种实现方案 - 开源研究系列文章
以前在大学的时候模仿Winamp的磁吸效果编写过一个类库,用于在应用中多个窗体的相互磁吸效果.因为此效果应用不多,但是窗体磁吸屏幕边缘的效果倒是比较实用,于是就用C#来实现窗体磁吸屏幕边缘的代码,这里 ...
- C++ 模板实参类型限制
有时候我们编写一个模板,希望用户使用我们期望的类型来实例化它,就需要对实参进行检查,限制不满足条件的实例化版本,同时给出便于理解的编译时信息. 对于 C++20 后的版本,可以将条件包装为concep ...
- 推荐一个kafka可视化客户端GUI工具(Kafka King)
Kafka King,比较新,只需要填写kafka连接地址就行,不需要什么zookeeper. 支持的功能也多: 查看集群节点列表(完成) 创建主题(支持批量).删除主题.支持根据消费者组统计每个to ...
- IDEA jrebel热部署插件破解-最新版
前言 JRebel插件2022.4.2及之后版本在线地址激活方式已不可用,所以采用本地地址 + 生成的GUID方式 激活 (本文章写的时候,用的JRebel最新版本2023.2.1) 如果需要在线激活 ...