欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

elementUI Tree 樹形控件的官方使用文檔

 更新時間:2019年04月25日 09:30:26   作者:楊楊得懿  
這篇文章主要介紹了elementUI Tree 樹形控件的官方使用文檔,用清晰的層級結(jié)構(gòu)展示信息,可展開或折疊。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

Tree 樹形控件---官方文檔地址

用清晰的層級結(jié)構(gòu)展示信息,可展開或折疊。

基礎(chǔ)用法

基礎(chǔ)的樹形結(jié)構(gòu)展示。

<el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
 
<script>
 export default {
 data() {
  return {
  data: [{
   label: '一級 1',
   children: [{
   label: '二級 1-1',
   children: [{
    label: '三級 1-1-1'
   }]
   }]
  }, {
   label: '一級 2',
   children: [{
   label: '二級 2-1',
   children: [{
    label: '三級 2-1-1'
   }]
   }, {
   label: '二級 2-2',
   children: [{
    label: '三級 2-2-1'
   }]
   }]
  }, {
   label: '一級 3',
   children: [{
   label: '二級 3-1',
   children: [{
    label: '三級 3-1-1'
   }]
   }, {
   label: '二級 3-2',
   children: [{
    label: '三級 3-2-1'
   }]
   }]
  }],
  defaultProps: {
   children: 'children',
   label: 'label'
  }
  };
 },
 methods: {
  handleNodeClick(data) {
  console.log(data);
  }
 }
 };
</script>

可選擇

適用于需要選擇層級時使用。本例還展示了動態(tài)加載節(jié)點數(shù)據(jù)的方法。

<el-tree
 :props="props"
 :load="loadNode"
 lazy
 show-checkbox
 @check-change="handleCheckChange">
</el-tree>
 
<script>
 export default {
 data() {
  return {
  props: {
   label: 'name',
   children: 'zones'
  },
  count: 1
  };
 },
 methods: {
  handleCheckChange(data, checked, indeterminate) {
  console.log(data, checked, indeterminate);
  },
  handleNodeClick(data) {
  console.log(data);
  },
  loadNode(node, resolve) {
  if (node.level === 0) {
   return resolve([{ name: 'region1' }, { name: 'region2' }]);
  }
  if (node.level > 3) return resolve([]);
 
  var hasChild;
  if (node.data.name === 'region1') {
   hasChild = true;
  } else if (node.data.name === 'region2') {
   hasChild = false;
  } else {
   hasChild = Math.random() > 0.5;
  }
 
  setTimeout(() => {
   var data;
   if (hasChild) {
   data = [{
    name: 'zone' + this.count++
   }, {
    name: 'zone' + this.count++
   }];
   } else {
   data = [];
   }
 
   resolve(data);
  }, 500);
  }
 }
 };
</script>

 懶加載自定義葉子節(jié)點

由于在點擊節(jié)點時才進行該層數(shù)據(jù)的獲取,默認情況下 Tree 無法預(yù)知某個節(jié)點是否為葉子節(jié)點,所以會為每個節(jié)點添加一個下拉按鈕,如果節(jié)點沒有下層數(shù)據(jù),則點擊后下拉按鈕會消失。同時,你也可以提前告知 Tree 某個節(jié)點是否為葉子節(jié)點,從而避免在葉子節(jié)點前渲染下拉按鈕。

<el-tree
 :props="props1"
 :load="loadNode1"
 lazy
 show-checkbox>
</el-tree>
 
<script>
 export default {
 data() {
  return {
  props1: {
   label: 'name',
   children: 'zones',
   isLeaf: 'leaf'
  },
  };
 },
 methods: {
  loadNode1(node, resolve) {
  if (node.level === 0) {
   return resolve([{ name: 'region' }]);
  }
  if (node.level > 1) return resolve([]);
 
  setTimeout(() => {
   const data = [{
   name: 'leaf',
   leaf: true
   }, {
   name: 'zone'
   }];
 
   resolve(data);
  }, 500);
  }
 }
 };
</script>

默認展開和默認選中

可將 Tree 的某些節(jié)點設(shè)置為默認展開或默認選中

分別通過default-expanded-keysdefault-checked-keys設(shè)置默認展開和默認選中的節(jié)點。需要注意的是,此時必須設(shè)置node-key,其值為節(jié)點數(shù)據(jù)中的一個字段名,該字段在整棵樹中是唯一的。

<el-tree
 :data="data2"
 show-checkbox
 node-key="id"
 :default-expanded-keys="[2, 3]"
 :default-checked-keys="[5]"
 :props="defaultProps">
</el-tree>
 
<script>
 export default {
 data() {
  return {
  data2: [{
   id: 1,
   label: '一級 1',
   children: [{
   id: 4,
   label: '二級 1-1',
   children: [{
    id: 9,
    label: '三級 1-1-1'
   }, {
    id: 10,
    label: '三級 1-1-2'
   }]
   }]
  }, {
   id: 2,
   label: '一級 2',
   children: [{
   id: 5,
   label: '二級 2-1'
   }, {
   id: 6,
   label: '二級 2-2'
   }]
  }, {
   id: 3,
   label: '一級 3',
   children: [{
   id: 7,
   label: '二級 3-1'
   }, {
   id: 8,
   label: '二級 3-2'
   }]
  }],
  defaultProps: {
   children: 'children',
   label: 'label'
  }
  };
 }
 };
</script>

禁用狀態(tài)

可將 Tree 的某些節(jié)點設(shè)置為禁用狀態(tài)

通過disabled設(shè)置禁用狀態(tài)。

<el-tree
 :data="data3"
 show-checkbox
 node-key="id"
 :default-expanded-keys="[2, 3]"
 :default-checked-keys="[5]">
</el-tree>
 
<script>
 export default {
 data() {
  return {
  data3: [{
   id: 1,
   label: '一級 2',
   children: [{
   id: 3,
   label: '二級 2-1',
   children: [{
    id: 4,
    label: '三級 3-1-1'
   }, {
    id: 5,
    label: '三級 3-1-2',
    disabled: true
   }]
   }, {
   id: 2,
   label: '二級 2-2',
   disabled: true,
   children: [{
    id: 6,
    label: '三級 3-2-1'
   }, {
    id: 7,
    label: '三級 3-2-2',
    disabled: true
   }]
   }]
  }],
  defaultProps: {
   children: 'children',
   label: 'label'
  }
  };
 }
 };
</script>

樹節(jié)點的選擇

本例展示如何獲取和設(shè)置選中節(jié)點。獲取和設(shè)置各有兩種方式:通過 node 或通過 key。如果需要通過 key 來獲取或設(shè)置,則必須設(shè)置node-key。 

<el-tree
 :data="data2"
 show-checkbox
 default-expand-all
 node-key="id"
 ref="tree"
 highlight-current
 :props="defaultProps">
</el-tree>
 
<div class="buttons">
 <el-button @click="getCheckedNodes">通過 node 獲取</el-button>
 <el-button @click="getCheckedKeys">通過 key 獲取</el-button>
 <el-button @click="setCheckedNodes">通過 node 設(shè)置</el-button>
 <el-button @click="setCheckedKeys">通過 key 設(shè)置</el-button>
 <el-button @click="resetChecked">清空</el-button>
</div>
 
<script>
 export default {
 methods: {
  getCheckedNodes() {
  console.log(this.$refs.tree.getCheckedNodes());
  },
  getCheckedKeys() {
  console.log(this.$refs.tree.getCheckedKeys());
  },
  setCheckedNodes() {
  this.$refs.tree.setCheckedNodes([{
   id: 5,
   label: '二級 2-1'
  }, {
   id: 9,
   label: '三級 1-1-1'
  }]);
  },
  setCheckedKeys() {
  this.$refs.tree.setCheckedKeys([3]);
  },
  resetChecked() {
  this.$refs.tree.setCheckedKeys([]);
  }
 },
 
 data() {
  return {
  data2: [{
   id: 1,
   label: '一級 1',
   children: [{
   id: 4,
   label: '二級 1-1',
   children: [{
    id: 9,
    label: '三級 1-1-1'
   }, {
    id: 10,
    label: '三級 1-1-2'
   }]
   }]
  }, {
   id: 2,
   label: '一級 2',
   children: [{
   id: 5,
   label: '二級 2-1'
   }, {
   id: 6,
   label: '二級 2-2'
   }]
  }, {
   id: 3,
   label: '一級 3',
   children: [{
   id: 7,
   label: '二級 3-1'
   }, {
   id: 8,
   label: '二級 3-2'
   }]
  }],
  defaultProps: {
   children: 'children',
   label: 'label'
  }
  };
 }
 };
</script>

自定義節(jié)點內(nèi)容

節(jié)點的內(nèi)容支持自定義,可以在節(jié)點區(qū)添加按鈕或圖標等內(nèi)容

可以通過兩種方法進行樹節(jié)點內(nèi)容的自定義:render-content和 scoped slot。使用render-content指定渲染函數(shù),該函數(shù)返回需要的節(jié)點區(qū)內(nèi)容即可。渲染函數(shù)的用法請參考 Vue 文檔。使用 scoped slot 會傳入兩個參數(shù)nodedata,分別表示當前節(jié)點的 Node 對象和當前節(jié)點的數(shù)據(jù)。注意:由于 jsfiddle 不支持 JSX 語法,所以render-content示例在 jsfiddle 中無法運行。但是在實際的項目中,只要正確地配置了相關(guān)依賴,就可以正常運行。

<div class="custom-tree-container">
 <div class="block">
 <p>使用 render-content</p>
 <el-tree
  :data="data4"
  show-checkbox
  node-key="id"
  default-expand-all
  :expand-on-click-node="false"
  :render-content="renderContent">
 </el-tree>
 </div>
 <div class="block">
 <p>使用 scoped slot</p>
 <el-tree
  :data="data5"
  show-checkbox
  node-key="id"
  default-expand-all
  :expand-on-click-node="false">
  <span class="custom-tree-node" slot-scope="{ node, data }">
  <span>{{ node.label }}</span>
  <span>
   <el-button
   type="text"
   size="mini"
   @click="() => append(data)">
   Append
   </el-button>
   <el-button
   type="text"
   size="mini"
   @click="() => remove(node, data)">
   Delete
   </el-button>
  </span>
  </span>
 </el-tree>
 </div>
</div>
 
<script>
 let id = 1000;
 
 export default {
 data() {
  const data = [{
  id: 1,
  label: '一級 1',
  children: [{
   id: 4,
   label: '二級 1-1',
   children: [{
   id: 9,
   label: '三級 1-1-1'
   }, {
   id: 10,
   label: '三級 1-1-2'
   }]
  }]
  }, {
  id: 2,
  label: '一級 2',
  children: [{
   id: 5,
   label: '二級 2-1'
  }, {
   id: 6,
   label: '二級 2-2'
  }]
  }, {
  id: 3,
  label: '一級 3',
  children: [{
   id: 7,
   label: '二級 3-1'
  }, {
   id: 8,
   label: '二級 3-2'
  }]
  }];
  return {
  data4: JSON.parse(JSON.stringify(data)),
  data5: JSON.parse(JSON.stringify(data))
  }
 },
 
 methods: {
  append(data) {
  const newChild = { id: id++, label: 'testtest', children: [] };
  if (!data.children) {
   this.$set(data, 'children', []);
  }
  data.children.push(newChild);
  },
 
  remove(node, data) {
  const parent = node.parent;
  const children = parent.data.children || parent.data;
  const index = children.findIndex(d => d.id === data.id);
  children.splice(index, 1);
  },
 
  renderContent(h, { node, data, store }) {
  return (
   <span class="custom-tree-node">
   <span>{node.label}</span>
   <span>
    <el-button size="mini" type="text" on-click={ () => this.append(data) }>Append</el-button>
    <el-button size="mini" type="text" on-click={ () => this.remove(node, data) }>Delete</el-button>
   </span>
   </span>);
  }
 }
 };
</script>
 
<style>
 .custom-tree-node {
 flex: 1;
 display: flex;
 align-items: center;
 justify-content: space-between;
 font-size: 14px;
 padding-right: 8px;
 }
</style>

節(jié)點過濾

通過關(guān)鍵字過濾樹節(jié)點

在需要對節(jié)點進行過濾時,調(diào)用 Tree 實例的filter方法,參數(shù)為關(guān)鍵字。需要注意的是,此時需要設(shè)置filter-node-method,值為過濾函數(shù)。

<el-input
 placeholder="輸入關(guān)鍵字進行過濾"
 v-model="filterText">
</el-input>
 
<el-tree
 class="filter-tree"
 :data="data2"
 :props="defaultProps"
 default-expand-all
 :filter-node-method="filterNode"
 ref="tree2">
</el-tree>
 
<script>
 export default {
 watch: {
  filterText(val) {
  this.$refs.tree2.filter(val);
  }
 },
 
 methods: {
  filterNode(value, data) {
  if (!value) return true;
  return data.label.indexOf(value) !== -1;
  }
 },
 
 data() {
  return {
  filterText: '',
  data2: [{
   id: 1,
   label: '一級 1',
   children: [{
   id: 4,
   label: '二級 1-1',
   children: [{
    id: 9,
    label: '三級 1-1-1'
   }, {
    id: 10,
    label: '三級 1-1-2'
   }]
   }]
  }, {
   id: 2,
   label: '一級 2',
   children: [{
   id: 5,
   label: '二級 2-1'
   }, {
   id: 6,
   label: '二級 2-2'
   }]
  }, {
   id: 3,
   label: '一級 3',
   children: [{
   id: 7,
   label: '二級 3-1'
   }, {
   id: 8,
   label: '二級 3-2'
   }]
  }],
  defaultProps: {
   children: 'children',
   label: 'label'
  }
  };
 }
 };
</script>

手風(fēng)琴模式

對于同一級的節(jié)點,每次只能展開一個

<el-tree
 :data="data"
 :props="defaultProps"
 accordion
 @node-click="handleNodeClick">
</el-tree>
 
<script>
 export default {
 data() {
  return {
  data: [{
   label: '一級 1',
   children: [{
   label: '二級 1-1',
   children: [{
    label: '三級 1-1-1'
   }]
   }]
  }, {
   label: '一級 2',
   children: [{
   label: '二級 2-1',
   children: [{
    label: '三級 2-1-1'
   }]
   }, {
   label: '二級 2-2',
   children: [{
    label: '三級 2-2-1'
   }]
   }]
  }, {
   label: '一級 3',
   children: [{
   label: '二級 3-1',
   children: [{
    label: '三級 3-1-1'
   }]
   }, {
   label: '二級 3-2',
   children: [{
    label: '三級 3-2-1'
   }]
   }]
  }],
  defaultProps: {
   children: 'children',
   label: 'label'
  }
  };
 },
 methods: {
  handleNodeClick(data) {
  console.log(data);
  }
 }
 };
</script>

可拖拽節(jié)點

通過 draggable 屬性可讓節(jié)點變?yōu)榭赏献А?/p>

<el-tree
 :data="data6"
 node-key="id"
 default-expand-all
 @node-drag-start="handleDragStart"
 @node-drag-enter="handleDragEnter"
 @node-drag-leave="handleDragLeave"
 @node-drag-over="handleDragOver"
 @node-drag-end="handleDragEnd"
 @node-drop="handleDrop"
 draggable
 :allow-drop="allowDrop"
 :allow-drag="allowDrag">
</el-tree>
 
<script>
 export default {
 data() {
  return {
  data6: [{
   id: 1,
   label: '一級 1',
   children: [{
   id: 4,
   label: '二級 1-1',
   children: [{
    id: 9,
    label: '三級 1-1-1'
   }, {
    id: 10,
    label: '三級 1-1-2'
   }]
   }]
  }, {
   id: 2,
   label: '一級 2',
   children: [{
   id: 5,
   label: '二級 2-1'
   }, {
   id: 6,
   label: '二級 2-2'
   }]
  }, {
   id: 3,
   label: '一級 3',
   children: [{
   id: 7,
   label: '二級 3-1'
   }, {
   id: 8,
   label: '二級 3-2',
   children: [{
    id: 11,
    label: '三級 3-2-1'
   }, {
    id: 12,
    label: '三級 3-2-2'
   }, {
    id: 13,
    label: '三級 3-2-3'
   }]
   }]
  }],
  defaultProps: {
   children: 'children',
   label: 'label'
  }
  };
 },
 methods: {
  handleDragStart(node, ev) {
  console.log('drag start', node);
  },
  handleDragEnter(draggingNode, dropNode, ev) {
  console.log('tree drag enter: ', dropNode.label);
  },
  handleDragLeave(draggingNode, dropNode, ev) {
  console.log('tree drag leave: ', dropNode.label);
  },
  handleDragOver(draggingNode, dropNode, ev) {
  console.log('tree drag over: ', dropNode.label);
  },
  handleDragEnd(draggingNode, dropNode, dropType, ev) {
  console.log('tree drag end: ', dropNode && dropNode.label, dropType);
  },
  handleDrop(draggingNode, dropNode, dropType, ev) {
  console.log('tree drop: ', dropNode.label, dropType);
  },
  allowDrop(draggingNode, dropNode) {
  return dropNode.data.label !== '二級 3-1';
  },
  allowDrag(draggingNode) {
  return draggingNode.data.label.indexOf('三級 3-1-1') === -1;
  }
 }
 };
</script>

Attributes

參數(shù) 說明 類型 可選值 默認值
data 展示數(shù)據(jù) array
empty-text 內(nèi)容為空的時候展示的文本 String
node-key 每個樹節(jié)點用來作為唯一標識的屬性,整棵樹應(yīng)該是唯一的 String
props 配置選項,具體看下表 object
render-after-expand 是否在第一次展開某個樹節(jié)點后才渲染其子節(jié)點 boolean true
load 加載子樹數(shù)據(jù)的方法,僅當 lazy 屬性為true 時生效 function(node, resolve)
render-content 樹節(jié)點的內(nèi)容區(qū)的渲染 Function Function(h, { node, data, store }
highlight-current 是否高亮當前選中節(jié)點,默認值是 false。 boolean false
default-expand-all 是否默認展開所有節(jié)點 boolean false
expand-on-click-node 是否在點擊節(jié)點的時候展開或者收縮節(jié)點, 默認值為 true,如果為 false,則只有點箭頭圖標的時候才會展開或者收縮節(jié)點。 boolean true
auto-expand-parent 展開子節(jié)點的時候是否自動展開父節(jié)點 boolean true
default-expanded-keys 默認展開的節(jié)點的 key 的數(shù)組 array
show-checkbox 節(jié)點是否可被選擇 boolean false
check-strictly 在顯示復(fù)選框的情況下,是否嚴格的遵循父子不互相關(guān)聯(lián)的做法,默認為 false boolean false
default-checked-keys 默認勾選的節(jié)點的 key 的數(shù)組 array
filter-node-method 對樹節(jié)點進行篩選時執(zhí)行的方法,返回 true 表示這個節(jié)點可以顯示,返回 false 則表示這個節(jié)點會被隱藏 Function(value, data, node)
accordion 是否每次只打開一個同級樹節(jié)點展開 boolean false
indent 相鄰級節(jié)點間的水平縮進,單位為像素 number 16
lazy 是否懶加載子節(jié)點,需與 load 方法結(jié)合使用 boolean false
draggable 是否開啟拖拽節(jié)點功能 boolean false
allow-drag 判斷節(jié)點能否被拖拽 Function(node)
allow-drop 拖拽時判定位置能否被放置 Function(draggingNode, dropNode)

props

參數(shù) 說明 類型 可選值 默認值
label 指定節(jié)點標簽為節(jié)點對象的某個屬性值 string, function(data, node)
children 指定子樹為節(jié)點對象的某個屬性值 string
disabled 指定節(jié)點選擇框是否禁用為節(jié)點對象的某個屬性值 boolean, function(data, node)
isLeaf 指定節(jié)點是否為葉子節(jié)點,僅在指定了 lazy 屬性的情況下生效 boolean, function(data, node)

方法

Tree 內(nèi)部使用了 Node 類型的對象來包裝用戶傳入的數(shù)據(jù),用來保存目前節(jié)點的狀態(tài)。 Tree 擁有如下方法:

方法名 說明 參數(shù)
filter 對樹節(jié)點進行篩選操作 接收一個任意類型的參數(shù),該參數(shù)會在 filter-node-method 中作為第一個參數(shù)
updateKeyChildren 通過 keys 設(shè)置節(jié)點子元素,使用此方法必須設(shè)置 node-key 屬性 (key, data) 接收兩個參數(shù),1. 節(jié)點 key 2. 節(jié)點數(shù)據(jù)的數(shù)組
getCheckedNodes 若節(jié)點可被選擇(即 show-checkbox 為 true),則返回目前被選中的節(jié)點所組成的數(shù)組 (leafOnly) 接收一個 boolean 類型的參數(shù),若為 true 則僅返回被選中的葉子節(jié)點,默認值為 false
setCheckedNodes 設(shè)置目前勾選的節(jié)點,使用此方法必須設(shè)置 node-key 屬性 (nodes) 接收勾選節(jié)點數(shù)據(jù)的數(shù)組
getCheckedKeys 若節(jié)點可被選擇(即 show-checkbox 為 true),則返回目前被選中的節(jié)點的 key 所組成的數(shù)組 (leafOnly) 接收一個 boolean 類型的參數(shù),若為 true 則僅返回被選中的葉子節(jié)點的 keys,默認值為 false
setCheckedKeys 通過 keys 設(shè)置目前勾選的節(jié)點,使用此方法必須設(shè)置 node-key 屬性 (keys, leafOnly) 接收兩個參數(shù),1. 勾選節(jié)點的 key 的數(shù)組 2. boolean 類型的參數(shù),若為 true則僅設(shè)置葉子節(jié)點的選中狀態(tài),默認值為 false
setChecked 通過 key / data 設(shè)置某個節(jié)點的勾選狀態(tài),使用此方法必須設(shè)置 node-key 屬性 (key/data, checked, deep) 接收三個參數(shù),1. 勾選節(jié)點的 key 或者 data 2. boolean 類型,節(jié)點是否選中 3. boolean 類型,是否設(shè)置子節(jié)點 ,默認為 false
getHalfCheckedNodes 若節(jié)點可被選擇(即 show-checkbox 為 true),則返回目前半選中的節(jié)點所組成的數(shù)組 -
getHalfCheckedKeys 若節(jié)點可被選擇(即 show-checkbox 為 true),則返回目前半選中的節(jié)點的 key 所組成的數(shù)組 -
getCurrentKey 獲取當前被選中節(jié)點的 key,使用此方法必須設(shè)置 node-key 屬性,若沒有節(jié)點被選中則返回 null
getCurrentNode 獲取當前被選中節(jié)點的 node,若沒有節(jié)點被選中則返回 null
setCurrentKey 通過 key 設(shè)置某個節(jié)點的當前選中狀態(tài),使用此方法必須設(shè)置 node-key 屬性 (key) 待被選節(jié)點的 key
setCurrentNode 通過 node 設(shè)置某個節(jié)點的當前選中狀態(tài),使用此方法必須設(shè)置 node-key 屬性 (node) 待被選節(jié)點的 node
getNode 根據(jù) data 或者 key 拿到 Tree 組件中的 node (data) 要獲得 node 的 key 或者 data
remove 刪除 Tree 中的一個節(jié)點 (data) 要刪除的節(jié)點的 data、key 或者 node
append 為 Tree 中的一個節(jié)點追加一個子節(jié)點 (data, parentNode) 接收兩個參數(shù),1. 要追加的子節(jié)點的 data 2. 子節(jié)點的 parent 的 data、key 或者 node
insertBefore 為 Tree 的一個節(jié)點的前面增加一個節(jié)點 (data, refNode) 接收兩個參數(shù),1. 要增加的節(jié)點的 data 2. 要增加的節(jié)點的后一個節(jié)點的 data、key 或者 node
insertAfter 為 Tree 的一個節(jié)點的后面增加一個節(jié)點 (data, refNode) 接收兩個參數(shù),1. 要增加的節(jié)點的 data 2. 要增加的節(jié)點的前一個節(jié)點的 data、key 或者 node

Events

事件名稱 說明 回調(diào)參數(shù)
node-click 節(jié)點被點擊時的回調(diào) 共三個參數(shù),依次為:傳遞給 data 屬性的數(shù)組中該節(jié)點所對應(yīng)的對象、節(jié)點對應(yīng)的 Node、節(jié)點組件本身。
node-contextmenu 當某一節(jié)點被鼠標右鍵點擊時會觸發(fā)該事件 共四個參數(shù),依次為:event、傳遞給 data 屬性的數(shù)組中該節(jié)點所對應(yīng)的對象、節(jié)點對應(yīng)的 Node、節(jié)點組件本身。
check-change 節(jié)點選中狀態(tài)發(fā)生變化時的回調(diào) 共三個參數(shù),依次為:傳遞給 data 屬性的數(shù)組中該節(jié)點所對應(yīng)的對象、節(jié)點本身是否被選中、節(jié)點的子樹中是否有被選中的節(jié)點
check 當復(fù)選框被點擊的時候觸發(fā) 共兩個參數(shù),依次為:傳遞給 data 屬性的數(shù)組中該節(jié)點所對應(yīng)的對象、樹目前的選中狀態(tài)對象,包含 checkedNodes、checkedKeys、halfCheckedNodes、halfCheckedKeys 四個屬性
current-change 當前選中節(jié)點變化時觸發(fā)的事件 共兩個參數(shù),依次為:當前節(jié)點的數(shù)據(jù),當前節(jié)點的 Node 對象
node-expand 節(jié)點被展開時觸發(fā)的事件 共三個參數(shù),依次為:傳遞給 data 屬性的數(shù)組中該節(jié)點所對應(yīng)的對象、節(jié)點對應(yīng)的 Node、節(jié)點組件本身
node-collapse 節(jié)點被關(guān)閉時觸發(fā)的事件 共三個參數(shù),依次為:傳遞給 data 屬性的數(shù)組中該節(jié)點所對應(yīng)的對象、節(jié)點對應(yīng)的 Node、節(jié)點組件本身
node-drag-start 節(jié)點開始拖拽時觸發(fā)的事件 共兩個參數(shù),依次為:被拖拽節(jié)點對應(yīng)的 Node、event
node-drag-enter 拖拽進入其他節(jié)點時觸發(fā)的事件 共三個參數(shù),依次為:被拖拽節(jié)點對應(yīng)的 Node、所進入節(jié)點對應(yīng)的 Node、event
node-drag-leave 拖拽離開某個節(jié)點時觸發(fā)的事件 共三個參數(shù),依次為:被拖拽節(jié)點對應(yīng)的 Node、所離開節(jié)點對應(yīng)的 Node、event
node-drag-over 在拖拽節(jié)點時觸發(fā)的事件(類似瀏覽器的 mouseover 事件) 共三個參數(shù),依次為:被拖拽節(jié)點對應(yīng)的 Node、當前進入節(jié)點對應(yīng)的 Node、event
node-drag-end 拖拽結(jié)束時(可能未成功)觸發(fā)的事件 共四個參數(shù),依次為:被拖拽節(jié)點對應(yīng)的 Node、結(jié)束拖拽時最后進入的節(jié)點(可能為空)、被拖拽節(jié)點的放置位置(before、after、inner)、event
node-drop 拖拽成功完成時觸發(fā)的事件 共四個參數(shù),依次為:被拖拽節(jié)點對應(yīng)的 Node、結(jié)束拖拽時最后進入的節(jié)點、被拖拽節(jié)點的放置位置(before、after、inner)、event

Scoped Slot

name 說明
自定義樹節(jié)點的內(nèi)容,參數(shù)為 { node, data }

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue+echarts封裝氣泡圖的方法

    vue+echarts封裝氣泡圖的方法

    這篇文章主要為大家詳細介紹了vue+echarts封裝氣泡圖的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • Vue中v-bind原理深入探究

    Vue中v-bind原理深入探究

    這篇文章主要給大家分享了 v-bind的使用和注意需要注意的點,下面文章圍繞 v-bind指令的相關(guān)資料展開內(nèi)容且附上詳細代碼 需要的小伙伴可以參考一下,希望對大家有所幫助
    2022-10-10
  • 詳解vue掛載到dom上會發(fā)生什么

    詳解vue掛載到dom上會發(fā)生什么

    這篇文章主要介紹了詳解vue掛載到dom上會發(fā)生什么,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • vue mixins組件復(fù)用的幾種方式(小結(jié))

    vue mixins組件復(fù)用的幾種方式(小結(jié))

    這篇文章主要介紹了vue mixins組件復(fù)用的幾種方式(小結(jié)),vue中提供了一種混合機制mixins,用來更高效的實現(xiàn)組件內(nèi)容的復(fù)用,有興趣的可以了解一下
    2017-09-09
  • Vue之插件詳解

    Vue之插件詳解

    這篇文章主要為大家介紹了Vue之插件,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助,希望能夠給你帶來幫助
    2021-11-11
  • Vue生命周期實例分析總結(jié)

    Vue生命周期實例分析總結(jié)

    Vue的生命周期就是vue實例從創(chuàng)建到銷毀的全過程,也就是new Vue()開始就是vue生命周期的開始。Vue實例有?個完整的?命周期,也就是從開始創(chuàng)建、初始化數(shù)據(jù)、編譯模版、掛載Dom->渲染、更新->渲染、卸載等?系列過程,稱這是Vue的?命周期
    2022-10-10
  • 談?wù)剉ue中mixin的一點理解

    談?wù)剉ue中mixin的一點理解

    vue中提供了一種混合機制--mixins,用來更高效的實現(xiàn)組件內(nèi)容的復(fù)用。下面給大家談?wù)勎覍ue中mixin的一點理解,需要的朋友參考下吧
    2017-12-12
  • Vue3+Element?Plus的項目搭建過程詳解

    Vue3+Element?Plus的項目搭建過程詳解

    這篇文章主要為大家介紹了Vue3+Element?Plus的項目搭建過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • vue + typescript + 極驗登錄驗證的實現(xiàn)方法

    vue + typescript + 極驗登錄驗證的實現(xiàn)方法

    這篇文章主要介紹了vue + typescript + 極驗 登錄驗證的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • vue3+vite使用環(huán)境變量.env的一些配置情況詳細說明

    vue3+vite使用環(huán)境變量.env的一些配置情況詳細說明

    開發(fā)中經(jīng)常會使用環(huán)境變量,Vite相比于Webpack也有一定的變化,下面這篇文章主要給大家介紹了關(guān)于vue3+vite使用環(huán)境變量.env的一些配置情況說明的相關(guān)資料,需要的朋友可以參考下
    2022-12-12

最新評論