OpenComponents开发和分布html组件框架
OpenComponents是一款用于开发和部署强大,分布式html组件的框架。
它的目标是拥有一个系统,这个系统允许大量合作(可能涉及在多个项目数百名工程师),并且拥有一个促进代码共享,减少依赖性,而且容易接近新特性和实验的工具。
介绍
OpenComponents包含两个方面:
The
components
are small units of isomorphic code mainly consisting of html, javascript, css. They can optionally contain some logic, allowing a server-side node.js application to compose a model that is used to render the view. After rendering they are pieces of pure html to be injected in any html page.The
consumers
are websites or microsites (small independently deployable web sites all connected by a front-door service or any routing mechanism) that need components for rendering partial contents in their web pages.
该框架包含三个部分:
The
cli
allows developers to create, develop, test, and publish components.The
library
is where the components are stored after the publishing. When components depend on static resources (such as images, css files, etc.) these are stored, during packaging and publishing, in a publicly-exposed part of the library that serves as cdn.The
registry
is a rest api that is used to consume, retrieve, and publish components. Since they are immutable, the registry is the entity that handles the traffic between the library and the consumers.
组件
该组件由以下目录组成
创建
创建一个包含组件的文件夹
npm install oc -g oc init hello-world
编辑,调试,测试
使用组件文件夹作为库和观察文件开始本地测试注册表:
oc dev . 3030
观察组件消耗时的状态
oc preview http://localhost:3030/hello-world
一旦组件发生变化,你将能够刷新这个页面,看看它的外观。
发布到注册表
您需要一个连接到库的在线注册表。具有相同名称和版本的组件将无法在注册表共存。
# you have to do the registry config first, just onc eoc registry add http://my-components-registry.mydomain.com # then, ship it oc publish hello-world/
现在应该可以登录 http://my-components-registry.mydomain.com/hello-world.