Git Product home page Git Product logo

Comments (5)

fritz-c avatar fritz-c commented on July 18, 2024 4
  1. What information is inside prevNode?
  2. Does this get called while dragging?
  3. Does this get called right before dropping?

Making some assumptions here, but:
The node itself should remain unchanged, but its parents (and path) will change. I'm pretty confident I could give info on this stuff for a shouldMoveNode API:

draggedNode // The node being moved

prevPath // the previous (current) location in the tree of the node
prevParentNode // the previous (current) parent node

nextPath // The potential next location in the tree of the node
nextParentNode // The potential next parent of the node

from react-sortable-tree.

xmhscratch avatar xmhscratch commented on July 18, 2024

The behaviour of this API is the same as prevent the node being moved into deeper in the tree provide by the maxDepth options. I have found that involved with canDrop inside drag-and-drop-utils.js.

The shouldMoveNode being invoked during the node move should provide helpful information and we could have more flexible option moving nodes around.

Thank you for excellent tree component that hard to be found on the internet.

from react-sortable-tree.

sapegin avatar sapegin commented on July 18, 2024

I like the idea with prevPath / nextPath. May be useful.

from react-sortable-tree.

jayryemure avatar jayryemure commented on July 18, 2024

This would be critical for my (probably unusual) application, I actually need to make an ajax call to the server to ensure the move doesn't violate a myriad of business rules before it's allowed to proceed.

One basic example of a rule is to make sure no "siblings" will have duplicate titles after the move proceeds. Others would be based on the business data associated with each node, spanning multiple tables in the DB, which explains the need for an ajax call.

So for us this would need to be called right after dropping as the check depends both on what node is being moved and where it's being moved to. Wouldn't want it to be disabled afterwards either as the user often will update their data to allow it to work the next time.

from react-sortable-tree.

fritz-c avatar fritz-c commented on July 18, 2024

I just released the canDrop API with version 0.1.13. I think this should help you do what you're trying to do.

from react-sortable-tree.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.