在检查器文本更改的回调处理程序中,我想对检查器文本字段中输入的文本执行一些逻辑,然后再将其应用于纸上选定的单元格。为此,我必须阻止默认操作。
我已经使用 rappid 2.0.0 的 Backbone 事件成功实现了它。这是较早的实现 -
'change [data-attribute="attrs/text/text"]': function(evt) {
evt.preventDefault();
var editedText = $(evt.target).text();
var convertedText = my.workflow.getApiName(editedText);
var selectedElement = this.selection.collection.toArray()[0];
var selectedElementId = selectedElement.id;
var selectedCell = this.graph.getCell(selectedElementId);
selectedCell.attributes.apiName = editedText;
selectedCell.attr("text/text", convertedText);
}
但是现在我已经使用 typescript 将实现更新为 angular 6 组件,
const graph = this.graph = new joint.dia.Graph;
graph.on('change [data-attribute="attrs/text/text"]', (cell: joint.dia.Cell, evt: any) => {
evt.preventDefault();
});
这里 evt.preventDefault() 给出错误。
试图寻找解决方案,但没有通过。