React-dnd: Verschachtelung und Besitz von React DnD-Backends

Erstellt am 17. Aug. 2015  ·  7Kommentare  ·  Quelle: react-dnd/react-dnd

Gibt es ein Handle für bereits eingerichtete Backends/DragDropContext? Ich verwende deinen Code aus # 186:

let defaultManager;
function getDefaultManager() {
    if (!defaultManager) {
        defaultManager = new DragDropManager(HTML5Backend);
    }
    return defaultManager;
}

Aber gibt es eine Möglichkeit zu überprüfen, ob eine andere Anwendung einen Manager erstellt hat?

design decisions wontfix

Hilfreichster Kommentar

@gaearon

Immer wenn ich das versuche, bekomme ich immer wieder

DragDropManager.js:40 Uncaught TypeError: createBackend is not a function

Irgendeine Idee, was das verursachen könnte? Ich habe genau den gleichen Code wie @jaygood mit DragDropManager importiert aus dnd-core und HTML5Backend importiert aus der richtigen Bibliothek.

Alle 7 Kommentare

Das Verschachteln von Back-Ends ist jetzt nicht gut durchdacht. Wenn Sie eine API-Änderung vorschlagen möchten, um sie deutlicher zu machen, freue ich mich, dies zu hören!

Ich verwende eine modifizierte Version von DragDropContext die einfach das obige getDefaultManager wobei das childContext wie folgt deklariert wird:

    const childContext = {
        dragDropManager: getDefaultManager(backend)
    };

das funktioniert bei mir wunderbar mit einem verschachtelten Drag & Drop-Kartenlayout, aber ich habe mir zugegebenermaßen noch nicht die Zeit genommen, alle Auswirkungen dieses Ansatzes zu überprüfen

@gaearon

Immer wenn ich das versuche, bekomme ich immer wieder

DragDropManager.js:40 Uncaught TypeError: createBackend is not a function

Irgendeine Idee, was das verursachen könnte? Ich habe genau den gleichen Code wie @jaygood mit DragDropManager importiert aus dnd-core und HTML5Backend importiert aus der richtigen Bibliothek.

@akhayoon @gaearon Nach dem Update von React DND (und auch React HTML5 Backend) von 2.6 auf 5.0

@bureson hallo,

@JJie09 Sie müssen die Art und Weise ändern, wie Sie die

import HTML5Backend from "react-dnd-html5-backend"
const HTML5Backend = require('react-dnd-html5-backend').default;

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.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen