微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

缩小 – Bower和Grunt工作流程

我只想对我的工作流程发表意见.我知道Yeoman并且故意决定不使用它.我的工作流程如下:

>运行bower install以安装所有项目资产依赖项.
>运行grunt,将所有js文件从bower组件文件夹复制到新的js文件夹,将所有css文件复制到新的css文件夹.
>进一步使用grunt任务来连接和缩小新文件夹中的所有js和css文件,并将它们放在dist文件夹中.
>从HTML中参考dist文件夹中的最终缩小的css和js.

我当然不希望在我的grunt任务中做的一件事是执行特定于依赖项的任务,例如从bootstrap文件夹中获取所有js文件到新的js文件夹,然后从prettyphoto文件夹中获取所有js文件到新的js文件夹中.我希望grunt任务尽可能通用,以便我可以在任何项目中使用相同的gruntfile,无论bower依赖项可能是什么样子.原因是如果我应该花费所有时间为每个项目编写我的gruntfile,为什么我不会以传统方式获取所有依赖项的源代码.

所以有一个grunt-contrib-copy插件可以将文件一个地方复制到另一个地方,我用它从bower的components文件夹中获取所有js文件.问题是大多数凉亭组件都带有常规的js和缩小版本.所以,我正在复制它们并连接和丑化它们.重复代码

我的工作流程有意义吗?是这样,我怎样才能摆脱上面段落中提到的问题?

解决方法

如果我理解正确,你应该看看 grunt-usemin.你可以将你的js标签包装在<! - build:js js / foo.js - >中.包中包含的useminPrepare任务将循环遍历任何脚本(或css或图像等),并将它们动态添加到concat或uglify任务中.

我发现的一个缺点是usemin任务相当慢,但希望如果实施this pull request,事情会变得更快,更快.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐