Javascript 有没有处理鲍尔膨胀的标准化方法?

Javascript 有没有处理鲍尔膨胀的标准化方法?,javascript,gruntjs,bower,Javascript,Gruntjs,Bower,我刚刚完成了一个站点构建,我们必须将文件提供给第三方,以便与他们的系统集成。构建必须是自包含的,因为将有多个具有不同能力级别的各方部署它们 我遇到的问题是,Bower在下载我的Javascript库时正在安装一切,并不总是包含dist/文件夹,或库的缩小版本,因此在删除非必要文件进行部署时,通常很难找到要保留的正确文件 最初考虑将所有内容保留在中的选项,但它使文件大小从4.5mb膨胀到超过15mb。如果我们直接部署到服务器上,我可能会选择这个选项,但包含一大堆代码(包括依赖项、自述文件、进一步的

我刚刚完成了一个站点构建,我们必须将文件提供给第三方,以便与他们的系统集成。构建必须是自包含的,因为将有多个具有不同能力级别的各方部署它们

我遇到的问题是,Bower在下载我的Javascript库时正在安装一切,并不总是包含
dist/
文件夹,或库的缩小版本,因此在删除非必要文件进行部署时,通常很难找到要保留的正确文件

最初考虑将所有内容保留在中的选项,但它使文件大小从4.5mb膨胀到超过15mb。如果我们直接部署到服务器上,我可能会选择这个选项,但包含一大堆代码(包括依赖项、自述文件、进一步的grunt和bower文件等)的危险似乎太大了

如果我们要对这些系统进行标准化,那么系统本身肯定应该以某种方式进行标准化,以避免我们必须手动检查组件目录、删除文件和进行测试,以确保没有任何故障


有没有我错过的构建阶段?我是否应该使用一些繁重的任务来将所有这些文件缩小为一个js文件,以及如何确保这一步骤不会给项目添加错误或将错误版本的文件拖到mega js文件中?

我会将所需文件挑选到另一个我可以控制版本的位置。我忽略了bower_组件,每次安装前端软件包时都会这样做,比如

gulp bower-cherry-pick --package jquery
它在内部使用,并在采摘樱桃时自动包含bower.json和.bower.json

这是cherry挑选的多个bower包的示例,在您挑选了多个bower包之后,有一个重要的注意事项:我们只使用cherry挑选并签入git的内容,同时捆绑并包含在源代码中。在这里,我只需将主bower文件插件重新定位到去膨胀(或樱桃精选)的位置并打包、缩小和包含


仅在安装新软件包时使用bower_组件,并且希望在安装新软件包时获得bower提供的验证、订购/排序和记录。在所有其他情况下,使用樱桃拾取的文件。两全其美。

鲍尔应该抓住整个项目,而不仅仅是JS。是的,在“分发”应用程序之前,您需要完成另一个步骤。建筑商是一个很好的方法。我现在使用的是bower copy,它非常有用