Das Beispiel ist:
return connectDragSource(connectDropTarget(
<div style={{ ...style, opacity }}>
{text}
</div>
));
Aber mit den alternativen Verbindungswegen, wie einem übergebenen Ref (mit innerRef, weil ich styled-components
), wenn ich dies tue:
return (
<MyElement
innerRef={instance => connectDragSource(connectDropTarget(findDOMNode(instance)))}
style={{ ...style, opacity }}
>
{text}
</MyElement>
);
Nur der innere Aufruf funktioniert (in diesem Fall connectDropTarget
, aber wenn ich connectDropTarget
und connectDragSource
, dann funktioniert nur connectDragSource
).
Das funktioniert aber:
return (
<MyElement
innerRef={instance => {
const domNode = findDOMNode(instance)
connectDragSource(domNode)
connectDropTarget(domNode)
}}
style={{ ...style, opacity }}
>
{text}
</MyElement>
);
Irgendein Grund warum?
Gibt es Neuigkeiten zu diesem Thema?
Es wäre toll, wenn React DnD mit Styled-Components (mit innerRef) arbeitet und nicht nur mit nativen div-Elementen.
Ich frage mich, wie das passiert, denn die Connector-Funktionen sollen ein geklontes ReactElement zurückgeben, und es ist seltsam, dass es in einem Rendering-Kontext gut funktioniert. Interessiert, die Erklärung zu hören, falls eine auftauchen sollte. :-)
Dieses Problem wurde automatisch als veraltet markiert, da es in letzter Zeit keine Aktivität hatte. Es wird geschlossen, wenn keine weitere Aktivität stattfindet. Vielen Dank für Ihre Beiträge.
Hilfreichster Kommentar
Gibt es Neuigkeiten zu diesem Thema?