前端构建工具componer

在我最近的文章中你可能已经看到了这个名字,叫componer的前端工具。之所以写这个工具,是我在morningstar工作的半年中,深切的体会到公司package-component-framework这样的开发模式。component将会是未来前端产品开发中的重头戏,将公司开发中的经验,以及我自己的一些思想结合起来,经过几个月的开发,终于完成componer的写作,现在终于可以对外发布。

componer是什么

简单的说,它是一个命令行的构建工具,基于node、npm、bower和gulp,在命令行中,使用componer命令可以实现add、build、preview、test等操作,而且基于gulp,所有工作流完全可定制,开发者可以根据自己的需要,对gulp中的控制程序做自己的修改。

componer组要是解决componet的问题。那么component的问题是什么呢?component本身其实是一个不能发挥价值的部分,只有将众多的component组合在一起,才能发挥其功能,实现产品的需求。那么问题就来了,单独的component代码应该怎样存在?它能独立运行吗?应该遵循什么规则提供对外的接口?这些问题我在《前端包管理器争端,只不过是构建工具的牙缝菜》一文中都有思考,这里就不赘述。

安装componer

componer是一个命令行工具,基于node、npm,所以只能在命令行中使用,安装非常简单:

npm install -g componer

在命令行中执行上面命令,就可以安装componer,安装之后就可以使用componer命令查看帮助信息。

使用componer

使用componer相当于接受componer提倡的component理念。作为工具,它分为两个部分,一部分是cli,另一部分是作为项目运行时的处理文件(gulp)。命令行命令是通过cli部分实现的,它是基于npm的script功能,可以全局安装成命令行工具。而项目文件被放在项目运行时目录中,全部都可以让开发者自己修改。

首先是创建和初始化项目:

mkdir my-project && cd my-project
componer init -i

然后添加一个componout:

componer add my-bower -t bower

接着构建

componer build my-bower

如果希望边写代码边build,可以执行

componer watch my-bower

这样每次修改并保存文件的时候,就会执行一次build任务。也可以预览当前正在开发的componout:

componer preview my-bower

完成开发之后,还可以进行单元测试:

componer test my-bower

上面的这些命令是开发过程中最常用的命令。每一个命令都在componer的README中有说明。

项目开发

在上面提到的项目目录中,初始化的文件都是运行时需要的文件,它们包含了componer默认的所有处理规则或模板,开发者可以针对这个项目的特点进行修改。

componouts目录下放置着所有开发的对象。这些componout的模板在gulp/templates目录下,你可以修改这些模板,在执行componer add任务时,通过添加-t参数来选择要使用哪个template。componout有三种类型,npm、bower、default,分别对应package、component、application。也就是说,用componer可以完成从package这种粒度到application这种粒度的build。当然,这还是要取决于遵循怎样的打包规则,这也可以由开发者通过修改gulp任务来改变。

问题反馈

如果你在使用过程中有什么不懂的地方,或者有bug需要反馈,可以在GitHub提交issue。

2017-01-30 |