代码之家  ›  专栏  ›  技术社区  ›  Fered

Npm、Dev dependecy或dependecy,当使用webpack等将所有内容打包到一个脚本中时?

  •  0
  • Fered  · 技术社区  · 6 年前

    例如,当我们使用webpack将所有内容打包到一个js文件中时,它已经将依赖项导入到该文件中。在这种情况下,我们是否需要 package.json ,也可以是全部 --save-dev ?

    请考虑我只谈论前端开发和实现。

    干杯

    2 回复  |  直到 6 年前
        1
  •  1
  •   PlayMa256    6 年前

    依赖关系在哪里并不重要(我的意思是,devdependences或普通依赖关系)。网页将要查看的是 require import 源代码中的语句。

    当devdependency和dependency真正起作用时,就是发布包的时候。如果手动运行,则只需安装devdependences npm/yarn install 在这个包裹上。如果您的用户正在安装此软件包,则当其中一个运行时 npm install --save-dev yourpackagename 只有 dependencies 田地将被填满。

    TL;TR: 不,webpack不关心您的依赖关系在哪里 package.json

        2
  •  0
  •   Brendan Gannon    6 年前

    这取决于应用程序的部署或分发方式。常规依赖关系是应用程序在运行时所需的。当只需要对应用程序进行更改时,它就是开发人员的依赖关系。

    如果必须先运行Web包构建,然后才能使用应用程序(例如,在连续集成环境中,应用程序是作为测试和部署过程的一部分构建的),则构建时所需的任何内容都是“常规”依赖项。在这种情况下,您的大多数包都是常规依赖项。

    如果您只需构建一次应用程序,而构建的资产就是分发/部署的资产——因此在应用程序可以使用之前不必再次进行构建——那么构建时所需的任何内容都是“开发”依赖关系,因为使用您的代码的人不必再次构建,除非他们对应用程序进行更改。在这种情况下,大多数依赖项都是“dev”依赖项。