接下来重点考虑一下关于项目当中gulpfile的复用的问题,如果说涉及到要去开发多个同类型的项目,这个自动化的构建工作流应该是一样的。这个时候就涉及到在多个项目当中重复去使用这些构建任务,这些构建任务绝大多数情况下它们都是相同的。所以说就面临一个需要去复用相同的gulpfile的问题,针对于这个问题可以通过代码段的方式把这个gulpfile做一个代码段保存起来并在不同的项目中去使用。但是这种方式它也有一个弊端,就是gulpfile散落在各个项目当中。一旦当这个gulpfile有一些问题需要去修复或者去升级的时候,就需要对每一个项目做相同的操作,这样也不利于整体的维护。所以说这一块要重点来看,如何去提取一个可复用的自动化构建工作流。解决的方法其实也很简单,就是通过创建一个新的模块去包装一下gulp。
然后把这个自动化的构建工作流给它包装进去。具体来说就是gulp只是一个自动华构建流的一个平台,它不负责去帮开发者提供任何的构建任务。自己的构架任务,要通过自己的gulpfile去定义。现在有了gulpfile也有了gulp,将二者通过一个模块结合到一起。结合到一起过后在以后同类型的项目当中就使用这个模块,去提供自动化构建的工作流就好了。
具体做法就是先建一个模块,然后把这个模块发布到npm代码仓库上面,最后在项目当中去使用这个模块。
第一步:在git hub 上创建一个空项目 gulp-page 并复制项目地址;
第二步:在本地新建一个空项目并初始化 yarn init
第三步:使用git remote add origin + 远程地址 关联远端仓库
第四步:查看状态 git status 并做初试提交 git add . / git commit -m "feat:initial commit" / git push -u origin master
第五步:将gulpfile复制到lib文件夹中,并将package.json当中的开发依赖复制到新的page.json文件中来。