Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
380 views
in Technique[技术] by (71.8m points)

javascript - Liquor tree drag and drop - how to prevent drop/create a parent node from a dragged child node (Vuejs)

I have parent nodes with child nodes. Child nodes can be dragged and dropped to any parent node of its child nodes(child nodes to child nodes only), but i should not create parent node after drag and drop of child node(child node should not be created as a parent node).

How could i restrict create a new parent node in the tree. Thank you for reading. Much appreciable if someone gives me a solution. I googled and couldn't find any solution for this.

<!DOCTYPE html>
<html>
<head>
  <title>Drag & Drop</title>
  <meta charset="UTF-8">
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script src="https://unpkg.com/liquor-tree"></script>
</head>
<body>
  <div id="app">
    <tree
      :data="treeData"
      :options="treeOptions"
      @node:dragging:start="logDragStart"
      @node:dragging:finish="logDragFinish"
    />
  </div>
  <script>
    new Vue({
        el: '#app',
        data: () => ({
          treeData: getTreeData(),
          treeOptions: {
            propertyNames: {
              text: 'MY_TEXT',
              children: 'KIDS',
              state: 'OPTIONS'
            },
            dnd: true,
            checkbox: true
          }
        }),
        
        methods: {
            logDragStart(node) {
            console.log('Start dragging: ' + node.text)
          },
          
            logDragFinish(targetNode, distinationNode) {
            console.log(`Stop dragging: [TARGET]${targetNode.text}`)
          }
        }
      })

      function getTreeData() {
        return [
          {
            MY_TEXT: 'PARENT1',
            OPTIONS: { draggable:false},
            KIDS: [
              { MY_TEXT: 'Parent1 - Child1' },
              { MY_TEXT: 'Parent1 - Child2' },
              { MY_TEXT: 'Parent1 - Child3'},
              { MY_TEXT: 'Parent1 - Child4'}               
              ]},
               {
            MY_TEXT: 'PARENT2',
            OPTIONS: { draggable:false},
            KIDS: [
              { MY_TEXT: 'Parent2 - Child1' },
              { MY_TEXT: 'Parent2 - Child2' },
              { MY_TEXT: 'Parent2 - Child3'},
              { MY_TEXT: 'Parent2 - Child4'}               
              ]},
               {
            MY_TEXT: 'PARENT3',
            OPTIONS: { draggable:false},
            KIDS: [
              { MY_TEXT: 'Parent3 - Child1' },
              { MY_TEXT: 'Parent3 - Child2' },
              { MY_TEXT: 'Parent3 - Child3'},
              { MY_TEXT: 'Parent3 - Child4'}               
              ]},
               {
            MY_TEXT: 'PARENT4',
            OPTIONS: { draggable:false},
            KIDS: [
              { MY_TEXT: 'Parent4 - Child1' },
              { MY_TEXT: 'Parent4 - Child2' },
              { MY_TEXT: 'Parent4 - Child3'},
              { MY_TEXT: 'Parent4 - Child4'}               
              ]}
              
        ]       
        
      }
  </script>
</body>
</html>
question from:https://stackoverflow.com/questions/65892541/liquor-tree-drag-and-drop-how-to-prevent-drop-create-a-parent-node-from-a-drag

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...