【问题标题】:npm WARN bootstrap@4.2.1 requires a peer of jquery@1.9.1 - 3 but none is installednpm WARN bootstrap@4.2.1 需要 jquery@1.9.1 - 3 的对等点,但没有安装
【发布时间】:2019-06-03 11:19:41
【问题描述】:

我尝试通过

在我的 Angular 项目中安装引导程序

npm install --g 引导

但我收到以下警告

npm WARN bootstrap@4.2.1 需要 jquery@1.9.1 - 3 的对等点,但没有安装。您必须自己安装对等依赖项。

npm WARN bootstrap@4.2.1 需要一个 popper.js@^1.14.6 但没有 已安装。您必须自己安装对等依赖项。

我正在使用以下版本的 ng 和 npm

Angular CLI: 7.1.4
Node: 10.15.0
OS: win32 x64
Angular: 7.1.4
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.11.4
@angular-devkit/build-angular     0.11.4
@angular-devkit/build-optimizer   0.11.4
@angular-devkit/build-webpack     0.11.4
@angular-devkit/core              7.1.4
@angular-devkit/schematics        7.1.4
@ngtools/webpack                  7.1.4
@schematics/angular               7.1.4
@schematics/update                0.11.4
rxjs                              6.3.3
typescript                        3.1.6
webpack                           4.23.1

【问题讨论】:

  • 按照 npm i jquery@1.9.1 --save 所说的做。我看到您想在系统上全局安装引导程序。也许您想重新考虑并为每个项目安装它。对我来说这很有意义,因为它是您项目的一部分。

标签: node.js angular npm


【解决方案1】:

照他说的做:

npm i jquery@1.9.1 --save

选项 --save 是将此依赖项保存到您的项目中。

【讨论】:

  • 但这会安装大量代码,您不需要 Angular 或 React 项目
  • @ekkis 然后不要使用引导程序 :)
【解决方案2】:

我遇到了同样的问题,这是解决方案:

npm install bootstrap jquery popper.js --save

系统会自动为您解析引用。

【讨论】:

    【解决方案3】:

    这对我有用 -

    npm i -g npm@3.10.10
    

    【讨论】:

      【解决方案4】:

      npm 安装:

      $npm install bootstrap

      $npm install bootstrap jquery popper.js --save

      然后

      导入到 react 文件夹(index.js):

      import 'bootstrap';

      import 'bootstrap/dist/css/bootstrap.min.css';

      【讨论】:

        【解决方案5】:

        我通过运行 npm 命令解决了上述问题

        npm install --save bootstrap

        【讨论】:

        • 这并没有解决我的问题。 @samir 的回答确实如此。您应该选择警告中提到的每个依赖项并手动安装它们。
        • 这个答案不适合这个问题。问题在于依赖关系,而不是引导程序本身。
        【解决方案6】:

        如果您使用的是 Angular,则不需要 jquery 等的那些依赖项。 Angular 负责渲染和操作 DOM,如果你使用 jQuery 干扰它,你可能会得到一些不需要的结果。

        【讨论】:

        • jQuery 是 Bootstrap 的依赖项
        • 这可以解释为什么我会收到此警告,但使用 angular 11、ng-bootstrap 9.0 和 bootstrap 4.5.0(无 jquery/popper)仍然一切正常。
        【解决方案7】:

        在你的 package.json 文件中 搜索“依赖项”并对其进行编辑以显示为

          "dependencies": {
             //same lib
            "jquery": "^1.9.1",
          },
        

        或从 cmd 运行此命令

        npm i jquery@1.9.1 --save

        【讨论】:

          【解决方案8】:

          您正在全局安装引导程序。您需要先打开项目文件,然后转到 cmd 并安装引导程序和 jquery,因为编译器不了解我们必须安装的位置。 该代码用于安装引导程序,而 jquery 是 PS E:\web\Angular\Angular 程序\my-first-project> npm install bootstrap@3 jquery --save 然后它将下载并签入您的 package.json 文件并显示您的软件版本

          【讨论】:

            【解决方案9】:

            我已经在我的 react 开发项目中通过以下步骤解决了 jQuery 依赖项

            npm install react-bootstrap bootstrap --save
            npm audit fix --force
            

            结果:发现 0 个漏洞

            如果另一个依赖项有问题,它也可以解决问题。

            【讨论】:

              猜你喜欢
              • 2016-03-09
              • 1970-01-01
              • 2017-04-09
              • 2017-04-01
              • 1970-01-01
              • 2017-12-18
              • 2018-02-13
              • 1970-01-01
              • 2019-02-20
              相关资源
              最近更新 更多