如何禁用 Yarn 自动格式化代码

Posted

技术标签:

【中文标题】如何禁用 Yarn 自动格式化代码【英文标题】:How to disable Yarn from automatically formatting code 【发布时间】:2019-08-18 05:24:56 【问题描述】:

我有一个文件突然出现,好像我在 git 中对其进行了一些更改。我正在尝试运行:

git checkout -- <file>

在我想放弃所有更改的文件上。但是,如果我运行git status,它会再次出现在那里。我什至尝试运行git stash,但同样的事情发生了。当我运行git status 时,该文件不断显示为未暂存。

git status
On branch master
Your branch is up to date with 'origin/master'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        modified:   packages/fp/src/support/SupportIndex.jsx

no changes added to commit (use "git add" and/or "git commit -a"). 

我认为这可能是 Intelij 重新编写代码并重建文件,但进一步检查,这似乎只有在我运行 yarn 时才会发生。

yarn run dev

当我运行它时,它会重新格式化该文件中的代码,因此它总是显示为已更改。我知道 yarn 有一个不这样做的标志,但我不记得它是哪一个或找到它?

【问题讨论】:

您是否使用了文件的完整路径? (不好意思问,只是为了排除) 此文件是否被跟踪? @RomainValeri 我确实使用了完整路径。 该文件是 Intelij 或其他 IDE 不断重新创建的吗?我正在重建“.idea/codeStyles/Project.xml”。 这通常意味着以下两种情况之一:(1) 有一个 supportIndex.jsxSUPporTINdex.JSx 或一些类似但不同的名称,并且您使用的是 Windows 或 MacOS ;或 (2) 存在一些不正确的行尾设置。我敢打赌情况 (1),这种情况更常见。 【参考方案1】:

如果你想禁止 yarn 格式化你的代码,你应该使用--no-fix 标志运行它。 在你的情况下:

yarn run dev --no-fix

这会将eslint-loader option 'fix' 设置为false

【讨论】:

以上是关于如何禁用 Yarn 自动格式化代码的主要内容,如果未能解决你的问题,请参考以下文章

VSCode 如何禁用某些格式的代码错误检查(红色波浪线)?

Auto-PEP8 通过将我的 lambda 转换为 def 函数来添加行,我如何禁用这种特定的自动格式?

如何禁用 Visual Studio 的 SQL 自动格式化和类设计器功能?

Visual Studio - 如何在运行宏时禁用自动格式化/更正?

在 Visual Studio 中禁用特定代码块的代码格式

如何通过Java程序提交yarn的MapReduce计算任务