@ cardstack/ 工作流程
工作流程包给主机应用程序一个工作流程系统,每个工作流程都可以使用 具有优先权(随着时间的推移可能会发生变化)和若干标记.
它显示一个通知柜台, 打开时, 几个面板可以看到 按优先级和标签划分的工作流程。 它可以一眼看出来 哪些工作流程需要采取行动,然后采取行动.
公共 API
主机应用程序需要制作 {{cardstack-workflow}} 在他们想要的地方
用于显示工作流程面板(最好是在屏幕的左边缘).
组件通过 cardstack-workflow 服务
定义主机应用程序使用的下列方法:
createThread(message1, message2, ...)createMessageFor(cardModel, properties)
需要为应用程序中的每个卡片模式创建信息(
工作流程与头罩下的信息相配合),并获得
createMessageFor 以上方法.
(我们可能需要一种第3个方法来获取给定的卡片模型的线程).
举个例子.
假设您在申请中有一个租借模型和相应的卡片
型号, rental-card创建工作流程 提供新的租金,你会
执行如下:
workflow: inject('cardstack-workflow'),
let urgent = this.get('store').queryRecord('priority', { name: 'urgent' });
let bayArea = this.get('store').queryRecord('tag', { name: 'Bay Area' });
let rentalCard = this.get('store').createRecord('rental-card');
rentalCard.save(() => {
let message = this.get('workflow').createMessageFor(rentalCard, {
priority: urgent,
tags: [ bayArea ],
});
return this.get('workflow').createThread(message);
});
在应用程序中,您定义了您的模型,然后使用上述方法创建一个 他们周围的工作流程.
详细的例子请参见本套件中的假程序.
安装
git clone <repository-url>此寄存器cd @cardstack/workflowyarn install
运行
- “DEBUG=纸板/*” DEBUG LEVEL=信息嵌入器 s
- 访问您的应用程序 http://localhost:4200 (英语)。 。 。 .
运行测试
本地运行测试 :
ember test --server
TravisCI 运行对列出的每个嵌入版本的测试 .travis.yml。 。 。 .
大楼
ember build
关于使用ember-cli的更多信息,请访问 https://ember-cli.com/ (中文(简体) )。 。 。 .