`npx prettier --write . --end-of-line lf` 是一条用于**格式化代码**的命令

命令拆解与核心作用

npx prettier --write . --end-of-line lf 是一条用于格式化代码 的命令,核心作用是:通过 Prettier(主流的代码格式化工具)自动格式化当前目录及所有子目录下的代码文件,并强制将文件的换行符统一为 LF(Line Feed,换行)格式。

逐部分解析

1. npx
  • 是 npm 5.2+ 内置的包执行工具,无需全局安装 Prettier,直接从 npm 仓库临时下载(或使用本地已安装的)Prettier 并执行。
  • 优势:避免全局安装的版本冲突,确保使用项目本地(node_modules)或最新兼容版本的 Prettier。
2. prettier
  • 核心工具:Prettier 是一个"有主见的"代码格式化工具,支持 JavaScript/TypeScript、CSS/LESS/SCSS、HTML、JSON、Markdown 等几乎所有前端主流文件格式,能统一团队代码风格。
3. --write .
  • --write:核心参数,意为"写入格式化后的内容到文件"(而非仅在终端预览格式化结果)。
  • .:指定格式化的目标路径为当前目录 (包含所有子目录),也可指定具体文件/目录(如 --write src/ 仅格式化 src 目录)。
    • 对比:若省略 --write,Prettier 仅会在终端输出格式化后的代码,不会修改原文件。
4. --end-of-line lf
  • --end-of-line:指定文件的换行符格式,强制覆盖 Prettier 配置文件(如 .prettierrc)中的 endOfLine 配置。
  • lf:换行符类型为 LF (Unix/Linux/macOS 系统默认换行符),可选值还有:
    • crlf:回车+换行(Windows 系统默认);
    • cr:仅回车(极少使用);
    • auto:根据系统自动适配(不推荐团队协作使用,易导致换行符不一致)。

核心使用场景

  1. 统一团队换行符规范
    跨系统开发时(Windows + macOS/Linux),不同系统默认换行符不同,强制 lf 可避免 Git 提交时因换行符差异产生的"无意义修改"(如文件全量标红)。
  2. 批量格式化代码
    首次接入 Prettier 时,一键格式化整个项目的所有文件,快速统一代码风格。
  3. 临时覆盖配置
    若项目 .prettierrc 中配置的 endOfLine 不符合需求(如配置为 auto),可通过该命令临时强制使用 lf,无需修改配置文件。

补充说明

  1. 忽略文件
    Prettier 会自动读取项目中的 .prettierignore 文件(语法同 .gitignore),忽略指定文件/目录(如 node_modules/dist/),不会格式化这些内容。
  2. 优先级
    命令行参数(如 --end-of-line lf)的优先级高于 Prettier 配置文件(.prettierrc/package.json 中的 prettier 字段)。
  3. 常见问题
    • Windows 系统执行后换行符仍为 CRLF:需确保 Git 配置 core.autocrlf=false(避免 Git 自动转换换行符);
    • 部分文件未格式化:检查 .prettierignore 是否包含该文件,或 Prettier 是否支持该文件类型(可通过 prettier --list-different . 查看未格式化的文件)。

简化/扩展用法

  • 仅检查未格式化的文件(不修改):npx prettier --check . --end-of-line lf
  • 仅格式化指定类型文件:npx prettier --write "src/**/*.js" --end-of-line lf
  • 结合配置文件(推荐):在 .prettierrc 中配置 "endOfLine": "lf",后续只需执行 npx prettier --write . 即可。
相关推荐
恋猫de小郭1 小时前
Flutter Zero 是什么?它的出现有什么意义?为什么你需要了解下?
android·前端·flutter
崔庆才丨静觅8 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
passerby60618 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了8 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅9 小时前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅9 小时前
5分钟快速搭建 AI 平台并用它赚钱!
前端
崔庆才丨静觅9 小时前
比官方便宜一半以上!Midjourney API 申请及使用
前端
Moment9 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
崔庆才丨静觅10 小时前
刷屏全网的“nano-banana”API接入指南!0.1元/张量产高清创意图,开发者必藏
前端
剪刀石头布啊10 小时前
jwt介绍
前端