【问题标题】:what is the difference between npm, grunt and webpack in terms of their application?npm、grunt 和 webpack 在应用方面有什么区别?
【发布时间】:2021-11-22 19:55:56
【问题描述】:

上述工具中的哪个工具用于解决什么样的问题?简明扼要的回答更好。

【问题讨论】:

    标签: npm webpack gruntjs


    【解决方案1】:

    grunt 和 webpack 的区别
    grunt是流管理工具,通过任务配置来执行用户需要的功能,比如格式验证、代码压缩等。值得一提的是grunt处理的代码只是用局部变量名替换,简化。什么都没有改变,它仍然是你的代码。

    webpack 进行了更彻底的打包过程,并且更倾向于对模块语法规则进行改造。主要任务是打通浏览器之间的隔阂,分析、压缩、合并、打包浏览器原本无法识别的各种静态文件,最终生成浏览器支持的代码。因此,webapck之后的代码已经被打包。不是你写的代码,也许你再看一遍就看不懂了。


    npm 更像是提供建筑环境
    npm 是一个随 NodeJS 一起安装的包管理工具。它可以解决 NodeJS 代码部署中的许多问题。常见使用场景如下:

    • 允许用户将他人编写的第三方包从 NPM 服务器下载到本地使用。
    • 允许用户从 NPM 服务器下载和安装其他人编写的命令行程序以供本地使用。
    • 允许用户将自己的包或命令行程序上传到 NPM 服务器供其他人使用。

    npm 更像是提供构建环境,但gruntwebpack 是作为构建工具工作的。

    【讨论】:

      【解决方案2】:

      您可以通过基本的 Google 搜索找到对这些内容的一些很好的描述。

      简而言之,npm 是一个软件存储库。 Grunt 是一种工具,用于将多个 JavaScript 任务组合成单个命令。 Webpack 是一个强大的模块捆绑器,允许您将来自各种来源(一个是 npm)的 javascript、css、html 组合在一起,并以这样一种方式将它们捆绑在一起,这样您就可以使用一个包含所有您需要的代码的 javascript 模块。

      世界上最大的软件注册表(库) npm 是世界上最大的软件注册表。

      注册表包含超过 800,000 个代码包。

      开源开发者使用 npm 共享软件。

      What is NPM @ W3Schools

      Grunt 是一个 JavaScript 任务运行器,一个用于自动执行诸如缩小、编译、单元测试和 linting 等频繁任务的工具。它使用命令行界面来运行在文件(称为 Gruntfile)中定义的自定义任务。 Grunt 由 Ben Alman 创建,使用 Node.js 编写。它通过 npm 分发。

      What is Grunt @ Wikipedia

      webpack 是一个开源的 JavaScript 模块打包器。[5][6][7][8]它主要用于 JavaScript,但如果包含相应的加载器,它可以转换 HTML、CSS 和图像等前端资产。 [9] webpack 获取具有依赖关系的模块并生成代表这些模块的静态资产。[10]

      Webpack 获取依赖关系并生成依赖关系图,允许 Web 开发人员使用模块化方法进行 Web 应用程序开发

      What is Webpack @ Wikipedia

      【讨论】:

        猜你喜欢
        • 2010-11-29
        • 1970-01-01
        • 2017-11-13
        • 1970-01-01
        • 2016-11-10
        • 2019-03-01
        • 1970-01-01
        • 2018-12-04
        相关资源
        最近更新 更多