.NET MVC 5 为什么要使用 Gulp 而不是 MVC 的默认捆绑器

.NET MVC 5 Why to use Gulp over MVC's default bundler

所以我决定使用 Bower 管理我的客户端库,并将 bower.json 文件添加到我的 VS2015 解决方案中,对其进行配置并且运行良好。然而,我注意到在几乎所有的文章中,人们都删除了默认的打包器并在项目中添加 Gulp 或 Grunt 打包器。默认捆绑器有什么问题?我的意思是,使用 Bowler 而不是 NuGet 对客户端库管理来说非常有意义,但改变真正有效的方法对我来说没有意义。因此,与 MVC 的默认捆绑器相比,Gulp/Grunt 捆绑器有哪些优势?

Gulp/Grunt 是前进的方向,而不是 MVC 默认的捆绑器,这不是因为哪个 bundling/minification 更好,而是主要原因是还有哪些其他功能可用,因为客户端只是与捆绑和缩小无关。还涉及很多其他事情,例如

  • CSSpre-processing(更少,SASS)
  • CSS 缩小
  • 图像缩小
  • HTML 缩小
  • 部署到单独的环境
  • 实时重新加载开发服务器
  • 文件监视(根据更改重建)

在开源社区的大力支持下,所有这些事情都可以在 Gulp/Grunt 中轻松实现。除此之外 Gulp/Grunt 成为 asp net core 中的第一个 class 公民。

所以我认为这些是迁移到基于 Gulp/Grunt 的环境的充分理由。