【问题标题】:How do I stop the prettier dependency in node_modules overriding the project .prettierrc?如何停止 node_modules 中更漂亮的依赖项覆盖项目 .prettierrc?
【发布时间】:2021-10-10 20:18:21
【问题描述】:

node_modules 文件夹中有一个prettier 安装(package.json 说"version": "1.19.1",)覆盖了我的项目根目录中的.prettierrc。

当我删除该目录时,格式恢复正常。

但这只是暂时的,因为npm i 把它放回去了。有些东西将其作为依赖项,即使搜索 "prettier"1.19.1 也只会返回 package-lock.json

我有其他项目可以在没有安装更漂亮的 node_modules 的情况下正常工作,但是这个 github 模板有它。

我该如何解决这个问题?理想情况下,我只想使用项目级别.prettierrc

【问题讨论】:

    标签: javascript npm svelte prettier


    【解决方案1】:

    您可以通过搜索您的package-lock.json 找出哪个包是罪魁祸首。那里的每个包都有一个requires 字段,其中列出了它的依赖项。这样您就可以遍历链来找出导致安装的依赖项。

    一旦你找到了这个包,你有几个选项来强制一个特定的依赖。在您的情况下,您将强制安装最新版本的 prettier-plugin-svelte。在您的情况下,最好使用npm shrinkwrap。您首先将最新版本的prettier-plugin-svelte 添加到您的package.json,然后执行npm i,然后确保只有最新版本的prettier-plugin-svelte 出现在您的node_modules 中,然后运行npm shrinkwrap。更多信息在这里:https://nodejs.org/en/blog/npm/managing-node-js-dependencies-with-shrinkwrap/

    有关各种工具 (npm/yarn) 的强制版本的更多信息和替代方法可以在这个 StackOverflow 答案中找到:How do I override nested NPM dependency versions?

    【讨论】:

      猜你喜欢
      • 2014-03-18
      • 1970-01-01
      • 2015-11-21
      • 1970-01-01
      • 2014-03-27
      • 2020-01-13
      • 2020-04-12
      • 2021-03-02
      • 1970-01-01
      相关资源
      最近更新 更多