Tengo un objeto que se puede arrastrar de la biblioteca de arrastrar y soltar de Ember ( https://github.com/mharris717/ember-drag-drop ) que se comporta de manera predeterminada como si dragStart se realizara instantáneamente. Necesito forzar ese objeto, para comenzar a arrastrar cuando el usuario mantiene presionado el botón del mouse durante algún tiempo, y pensé que podía hacerlo en el método dragStartAction proporcionado por la biblioteca de arrastrar y soltar, pero esta solución no funciona como se esperaba. . todavía es instantáneo dragStart.
objeto arrastrable de mi hbs:
{{#draggable-object dragHandle=".js-dragHandle" overrideClass=classes tagName="tbody" content=this dragStartAction=(action "onDragStart") dragStartHook=(action "onDragStartHook") dragEndHook=(action "onDragEndHook") dragEndAction=(action "onDragEnd") }}Acción onDragStart:
@action onDragStart(componentInstance, data) { setTimeout(() => { if (!this.selectedRowIds.includes(this.transaction.id)) { this.send("selectRow", this.transaction.id); } this.selectCoupledVoidPayments(); this.transferTransactions.onDragStart(findComponentObject(componentInstance), this.selectedRowIds, data); }, 500); }Acción onDragStartHook:
@action onDragStartHook(event: Event) { this.transferTransactions.onDragStartHook(event); }Estaba pensando que puedo resolver eso usando de alguna manera un asistente de retraso personalizado como este, pero esto está prohibido en mi lugar, y ni siquiera sé si esto hará el trabajo.
{{#draggable-object dragHandle=".js-dragHandle" overrideClass=classes tagName="tbody" content=this dragStartAction=(action (delay "onDragStart")) dragStartHook=(action "onDragStartHook") dragEndHook=(action "onDragEndHook") dragEndAction=(action "onDragEnd") }}¿Qué estoy haciendo mal o cuál es la forma correcta de implementar el retraso en Ember arrastrar y soltar?