左侧工具栏拖拽出现的元素如何设置默认的Label或者添加自定义属性?
LinDaiDai opened this issue · comments
wangpeilin commented
这个其实很好实现。如果你是用的自定义 palette 的话,试想一下,在 dragstart 和 click 事件的时候会执行一个创建节点的函数。那么我们就可以直接修改 businessObject['name'] = '霖呆呆' 就可以了。
wangpeilin commented
wangpeilin commented
代码如下:
// customPalette.js中
export default class CustomPalette {
function createTask() {
return function(event) {
const businessObject = bpmnFactory.create('bpmn:Task');
businessObject['custom'] = 1
businessObject['name'] = '霖呆呆'
const shape = elementFactory.createShape({
type: 'bpmn:Task',
businessObject
});
console.log(shape) // 只在拖动或者点击时触发
create.start(event, shape);
}
}
return {
'create.lindaidai-task': {
group: 'model',
className: 'icon-custom lindaidai-task',
// className: 'bpmn-icon-user-task',
title: translate('创建一个类型为lindaidai-task的任务节点'),
action: {
dragstart: createTask(),
click: createTask()
}
}
}
}