跳到主要内容

HTML5 Canvas 拖放事件

如需检测 Konva 拖放事件,可以使用 on() 方法将 dragstartdragmovedragend 事件绑定到节点。 on() 方法需要事件类型和事件发生时要运行的函数。

import Konva from 'konva';

const stage = new Konva.Stage({
container: 'container',
width: window.innerWidth,
height: window.innerHeight,
});

const layer = new Konva.Layer();
stage.add(layer);

const text = new Konva.Text({
x: 40,
y: 40,
text: 'Draggable Text',
fontSize: 20,
draggable: true,
width: 200,
});
layer.add(text);

const status = new Konva.Text({
x: 40,
y: 100,
text: '',
fontSize: 16,
width: 200,
});
layer.add(status);

text.on('dragstart', () => {
status.text('drag started');
});

text.on('dragend', () => {
status.text('drag ended');
});

text.on('dragmove', () => {
status.text('dragging');
});