:::demo A node's data is not fetched until it is clicked, so the Tree cannot predict whether a node is a leaf node. That's why a drop-down button is added to each node, and if it is a leaf node, the drop-down button will disappear when clicked. That being said, you can also tell the Tree in advance whether the node is a leaf node, avoiding the render of the drop-down button before a leaf node.
:::demo A node's data is not fetched until it is clicked, so the Tree cannot predict whether a node is a leaf node. That's why a drop-down button is added to each node, and if it is a leaf node, the drop-down button will disappear when clicked. That being said, you can also tell the Tree in advance whether the node is a leaf node, avoiding the render of the drop-down button before a leaf node.
```html
```html
<el-tree
<el-tree
:props="props1"
:props="props"
:load="loadNode1"
:load="loadNode1"
lazy
lazy
show-checkbox>
show-checkbox>
...
@@ -148,7 +148,7 @@ Used for node selection.
...
@@ -148,7 +148,7 @@ Used for node selection.
exportdefault{
exportdefault{
data(){
data(){
return{
return{
props1:{
props:{
label:'name',
label:'name',
children:'zones',
children:'zones',
isLeaf:'leaf'
isLeaf:'leaf'
...
@@ -186,7 +186,7 @@ The checkbox of a node can be set as disabled.
...
@@ -186,7 +186,7 @@ The checkbox of a node can be set as disabled.
:::demo In the example, 'disabled' property is declared in defaultProps, and some nodes are set as 'disabled:true'. The corresponding checkboxes are disabled and can't be clicked.
:::demo In the example, 'disabled' property is declared in defaultProps, and some nodes are set as 'disabled:true'. The corresponding checkboxes are disabled and can't be clicked.
```html
```html
<el-tree
<el-tree
:data="data3"
:data="data"
:props="defaultProps"
:props="defaultProps"
show-checkbox
show-checkbox
@check-change="handleCheckChange">
@check-change="handleCheckChange">
...
@@ -196,7 +196,7 @@ The checkbox of a node can be set as disabled.
...
@@ -196,7 +196,7 @@ The checkbox of a node can be set as disabled.
exportdefault{
exportdefault{
data(){
data(){
return{
return{
data3:[{
data:[{
id:1,
id:1,
label:'Level one 1',
label:'Level one 1',
children:[{
children:[{
...
@@ -242,7 +242,7 @@ Tree nodes can be initially expanded or checked
...
@@ -242,7 +242,7 @@ Tree nodes can be initially expanded or checked
:::demo Use `default-expanded-keys` and `default-checked-keys` to set initially expanded and initially checked nodes respectively. Note that for them to work, `node-key` is required. Its value is the name of a key in the data object, and the value of that key should be unique across the whole tree.
:::demo Use `default-expanded-keys` and `default-checked-keys` to set initially expanded and initially checked nodes respectively. Note that for them to work, `node-key` is required. Its value is the name of a key in the data object, and the value of that key should be unique across the whole tree.
```html
```html
<el-tree
<el-tree
:data="data2"
:data="data"
show-checkbox
show-checkbox
node-key="id"
node-key="id"
:default-expanded-keys="[2, 3]"
:default-expanded-keys="[2, 3]"
...
@@ -254,7 +254,7 @@ Tree nodes can be initially expanded or checked
...
@@ -254,7 +254,7 @@ Tree nodes can be initially expanded or checked
exportdefault{
exportdefault{
data(){
data(){
return{
return{
data2:[{
data:[{
id:1,
id:1,
label:'Level one 1',
label:'Level one 1',
children:[{
children:[{
...
@@ -305,7 +305,7 @@ Tree nodes can be initially expanded or checked
...
@@ -305,7 +305,7 @@ Tree nodes can be initially expanded or checked
:::demo This example shows how to get and set checked nodes. They both can be done in two approaches: node and key. If you are taking the key approach, `node-key` is required.
:::demo This example shows how to get and set checked nodes. They both can be done in two approaches: node and key. If you are taking the key approach, `node-key` is required.
```html
```html
<el-tree
<el-tree
:data="data2"
:data="data"
show-checkbox
show-checkbox
default-expand-all
default-expand-all
node-key="id"
node-key="id"
...
@@ -350,7 +350,7 @@ Tree nodes can be initially expanded or checked
...
@@ -350,7 +350,7 @@ Tree nodes can be initially expanded or checked
data(){
data(){
return{
return{
data2:[{
data:[{
id:1,
id:1,
label:'Level one 1',
label:'Level one 1',
children:[{
children:[{
...
@@ -405,7 +405,7 @@ The content of tree nodes can be customized, so you can add icons or buttons as
...
@@ -405,7 +405,7 @@ The content of tree nodes can be customized, so you can add icons or buttons as
<divclass="block">
<divclass="block">
<p>Using render-content</p>
<p>Using render-content</p>
<el-tree
<el-tree
:data="data4"
:data="data"
show-checkbox
show-checkbox
node-key="id"
node-key="id"
default-expand-all
default-expand-all
...
@@ -416,7 +416,7 @@ The content of tree nodes can be customized, so you can add icons or buttons as
...
@@ -416,7 +416,7 @@ The content of tree nodes can be customized, so you can add icons or buttons as
<divclass="block">
<divclass="block">
<p>Using scoped slot</p>
<p>Using scoped slot</p>
<el-tree
<el-tree
:data="data5"
:data="data"
show-checkbox
show-checkbox
node-key="id"
node-key="id"
default-expand-all
default-expand-all
...
@@ -483,8 +483,8 @@ The content of tree nodes can be customized, so you can add icons or buttons as
...
@@ -483,8 +483,8 @@ The content of tree nodes can be customized, so you can add icons or buttons as
}]
}]
}];
}];
return{
return{
data4:JSON.parse(JSON.stringify(data)),
data:JSON.parse(JSON.stringify(data)),
data5:JSON.parse(JSON.stringify(data))
data:JSON.parse(JSON.stringify(data))
}
}
},
},
...
@@ -543,7 +543,7 @@ Tree nodes can be filtered
...
@@ -543,7 +543,7 @@ Tree nodes can be filtered
<el-tree
<el-tree
class="filter-tree"
class="filter-tree"
:data="data2"
:data="data"
:props="defaultProps"
:props="defaultProps"
default-expand-all
default-expand-all
:filter-node-method="filterNode"
:filter-node-method="filterNode"
...
@@ -568,7 +568,7 @@ Tree nodes can be filtered
...
@@ -568,7 +568,7 @@ Tree nodes can be filtered
data(){
data(){
return{
return{
filterText:'',
filterText:'',
data2:[{
data:[{
id:1,
id:1,
label:'Level one 1',
label:'Level one 1',
children:[{
children:[{
...
@@ -689,7 +689,7 @@ You can drag and drop Tree nodes by adding a `draggable` attribute.
...
@@ -689,7 +689,7 @@ You can drag and drop Tree nodes by adding a `draggable` attribute.
:::demo
:::demo
```html
```html
<el-tree
<el-tree
:data="data6"
:data="data"
node-key="id"
node-key="id"
default-expand-all
default-expand-all
@node-drag-start="handleDragStart"
@node-drag-start="handleDragStart"
...
@@ -707,7 +707,7 @@ You can drag and drop Tree nodes by adding a `draggable` attribute.
...
@@ -707,7 +707,7 @@ You can drag and drop Tree nodes by adding a `draggable` attribute.
@@ -138,7 +138,7 @@ Usado para la selección de nodos.
...
@@ -138,7 +138,7 @@ Usado para la selección de nodos.
:::demo Los datos de un nodo no son cargados hasta que no es pinchado, así que el árbol no puede predecir si es una hoja. Por eso a cada nodo se le añade el botón de desplegar, y si el nodo es una hoja el botón desaparecerá al pinchar en él. También puede decirle al árbol que el nodo es una hoja de antemano, y así evita que muestre el botón de desplegar.
:::demo Los datos de un nodo no son cargados hasta que no es pinchado, así que el árbol no puede predecir si es una hoja. Por eso a cada nodo se le añade el botón de desplegar, y si el nodo es una hoja el botón desaparecerá al pinchar en él. También puede decirle al árbol que el nodo es una hoja de antemano, y así evita que muestre el botón de desplegar.
```html
```html
<el-tree
<el-tree
:props="props1"
:props="props"
:load="loadNode1"
:load="loadNode1"
lazy
lazy
show-checkbox>
show-checkbox>
...
@@ -148,7 +148,7 @@ Usado para la selección de nodos.
...
@@ -148,7 +148,7 @@ Usado para la selección de nodos.
exportdefault{
exportdefault{
data(){
data(){
return{
return{
props1:{
props:{
label:'name',
label:'name',
children:'zones',
children:'zones',
isLeaf:'leaf'
isLeaf:'leaf'
...
@@ -186,7 +186,7 @@ El checkbox de un nodo se puede poner como desactivado.
...
@@ -186,7 +186,7 @@ El checkbox de un nodo se puede poner como desactivado.
:::demo En el ejemplo, la propiedad 'disabled' se declara en defaultProps, y algunos nodos se ponen como 'disabled:true'. Los checkboxes correspondientes son desactivados y no se pueden pinchar.
:::demo En el ejemplo, la propiedad 'disabled' se declara en defaultProps, y algunos nodos se ponen como 'disabled:true'. Los checkboxes correspondientes son desactivados y no se pueden pinchar.
```html
```html
<el-tree
<el-tree
:data="data3"
:data="data"
:props="defaultProps"
:props="defaultProps"
show-checkbox
show-checkbox
@check-change="handleCheckChange">
@check-change="handleCheckChange">
...
@@ -196,7 +196,7 @@ El checkbox de un nodo se puede poner como desactivado.
...
@@ -196,7 +196,7 @@ El checkbox de un nodo se puede poner como desactivado.
exportdefault{
exportdefault{
data(){
data(){
return{
return{
data3:[{
data:[{
id:1,
id:1,
label:'Level one 1',
label:'Level one 1',
children:[{
children:[{
...
@@ -242,7 +242,7 @@ Los nodos pueden estar desplegados o seleccionados por defecto.
...
@@ -242,7 +242,7 @@ Los nodos pueden estar desplegados o seleccionados por defecto.
:::demo Utilice `default-expanded-keys` y `default-checked-keys` para establecer los nodos desplegados y seleccionados respectivamente. Tenga en cuenta que para que funcione es necesario que tengan `node-key`. Su valor es el nombre de una clave en el objeto data, y el valor de la clave debe ser único en todo el árbol.
:::demo Utilice `default-expanded-keys` y `default-checked-keys` para establecer los nodos desplegados y seleccionados respectivamente. Tenga en cuenta que para que funcione es necesario que tengan `node-key`. Su valor es el nombre de una clave en el objeto data, y el valor de la clave debe ser único en todo el árbol.
```html
```html
<el-tree
<el-tree
:data="data2"
:data="data"
show-checkbox
show-checkbox
node-key="id"
node-key="id"
:default-expanded-keys="[2, 3]"
:default-expanded-keys="[2, 3]"
...
@@ -254,7 +254,7 @@ Los nodos pueden estar desplegados o seleccionados por defecto.
...
@@ -254,7 +254,7 @@ Los nodos pueden estar desplegados o seleccionados por defecto.
exportdefault{
exportdefault{
data(){
data(){
return{
return{
data2:[{
data:[{
id:1,
id:1,
label:'Level one 1',
label:'Level one 1',
children:[{
children:[{
...
@@ -305,7 +305,7 @@ Los nodos pueden estar desplegados o seleccionados por defecto.
...
@@ -305,7 +305,7 @@ Los nodos pueden estar desplegados o seleccionados por defecto.
:::demo Este ejemplo muestra como establecer y leer nodos seleccionados. Esto se puede hacer por nodos o por claves. Si lo hace por claves el atributo `node-key` es necesario.
:::demo Este ejemplo muestra como establecer y leer nodos seleccionados. Esto se puede hacer por nodos o por claves. Si lo hace por claves el atributo `node-key` es necesario.
```html
```html
<el-tree
<el-tree
:data="data2"
:data="data"
show-checkbox
show-checkbox
default-expand-all
default-expand-all
node-key="id"
node-key="id"
...
@@ -350,7 +350,7 @@ Los nodos pueden estar desplegados o seleccionados por defecto.
...
@@ -350,7 +350,7 @@ Los nodos pueden estar desplegados o seleccionados por defecto.
data(){
data(){
return{
return{
data2:[{
data:[{
id:1,
id:1,
label:'Level one 1',
label:'Level one 1',
children:[{
children:[{
...
@@ -405,7 +405,7 @@ El contenido de los nodos puede ser personalizado, así que puede añadir iconos
...
@@ -405,7 +405,7 @@ El contenido de los nodos puede ser personalizado, así que puede añadir iconos
<divclass="block">
<divclass="block">
<p>Using render-content</p>
<p>Using render-content</p>
<el-tree
<el-tree
:data="data4"
:data="data"
show-checkbox
show-checkbox
node-key="id"
node-key="id"
default-expand-all
default-expand-all
...
@@ -416,7 +416,7 @@ El contenido de los nodos puede ser personalizado, así que puede añadir iconos
...
@@ -416,7 +416,7 @@ El contenido de los nodos puede ser personalizado, así que puede añadir iconos
<divclass="block">
<divclass="block">
<p>Using scoped slot</p>
<p>Using scoped slot</p>
<el-tree
<el-tree
:data="data5"
:data="data"
show-checkbox
show-checkbox
node-key="id"
node-key="id"
default-expand-all
default-expand-all
...
@@ -483,8 +483,8 @@ El contenido de los nodos puede ser personalizado, así que puede añadir iconos
...
@@ -483,8 +483,8 @@ El contenido de los nodos puede ser personalizado, así que puede añadir iconos
}]
}]
}];
}];
return{
return{
data4:JSON.parse(JSON.stringify(data)),
data:JSON.parse(JSON.stringify(data)),
data5:JSON.parse(JSON.stringify(data))
data:JSON.parse(JSON.stringify(data))
}
}
},
},
...
@@ -543,7 +543,7 @@ Los nodos del árbol se pueden filtrar.
...
@@ -543,7 +543,7 @@ Los nodos del árbol se pueden filtrar.
<el-tree
<el-tree
class="filter-tree"
class="filter-tree"
:data="data2"
:data="data"
:props="defaultProps"
:props="defaultProps"
default-expand-all
default-expand-all
:filter-node-method="filterNode"
:filter-node-method="filterNode"
...
@@ -568,7 +568,7 @@ Los nodos del árbol se pueden filtrar.
...
@@ -568,7 +568,7 @@ Los nodos del árbol se pueden filtrar.
data(){
data(){
return{
return{
filterText:'',
filterText:'',
data2:[{
data:[{
id:1,
id:1,
label:'Level one 1',
label:'Level one 1',
children:[{
children:[{
...
@@ -689,7 +689,7 @@ Puede arrastrar y soltar nodos de Tree añadiendo un atributo `draggable` .
...
@@ -689,7 +689,7 @@ Puede arrastrar y soltar nodos de Tree añadiendo un atributo `draggable` .
:::demo
:::demo
```html
```html
<el-tree
<el-tree
:data="data6"
:data="data"
node-key="id"
node-key="id"
default-expand-all
default-expand-all
@node-drag-start="handleDragStart"
@node-drag-start="handleDragStart"
...
@@ -707,7 +707,7 @@ Puede arrastrar y soltar nodos de Tree añadiendo un atributo `draggable` .
...
@@ -707,7 +707,7 @@ Puede arrastrar y soltar nodos de Tree añadiendo un atributo `draggable` .
@@ -138,7 +138,7 @@ Vous pouvez activer la sélection des noeuds.
...
@@ -138,7 +138,7 @@ Vous pouvez activer la sélection des noeuds.
:::demo Les données d'un noeud ne sont pas accessibles tant que la noeud n'est pas cliqué, l'arbre ne peut donc pas prédire si un noeud sera une feuille. C'est pourquoi un bouton de menu est ajouté à chaque noeud, et si c'est une feuille il disparaîtra après le clic. Vous pouvez également dire par avance à l'arbre si un noeud est une feuille, pour éviter l'apparition du bouton de menu.
:::demo Les données d'un noeud ne sont pas accessibles tant que la noeud n'est pas cliqué, l'arbre ne peut donc pas prédire si un noeud sera une feuille. C'est pourquoi un bouton de menu est ajouté à chaque noeud, et si c'est une feuille il disparaîtra après le clic. Vous pouvez également dire par avance à l'arbre si un noeud est une feuille, pour éviter l'apparition du bouton de menu.
```html
```html
<el-tree
<el-tree
:props="props1"
:props="props"
:load="loadNode1"
:load="loadNode1"
lazy
lazy
show-checkbox>
show-checkbox>
...
@@ -148,7 +148,7 @@ Vous pouvez activer la sélection des noeuds.
...
@@ -148,7 +148,7 @@ Vous pouvez activer la sélection des noeuds.
exportdefault{
exportdefault{
data(){
data(){
return{
return{
props1:{
props:{
label:'name',
label:'name',
children:'zones',
children:'zones',
isLeaf:'leaf'
isLeaf:'leaf'
...
@@ -186,7 +186,7 @@ Les checkbox des noeuds peuvent être désactivées individuellement.
...
@@ -186,7 +186,7 @@ Les checkbox des noeuds peuvent être désactivées individuellement.
:::demo Dans cet exemple, la propriété `disabled` est ajoutée à `defaultProps`, et certains noeuds ont `disabled:true`. Les checkbox correspondantes sont donc désactivées.
:::demo Dans cet exemple, la propriété `disabled` est ajoutée à `defaultProps`, et certains noeuds ont `disabled:true`. Les checkbox correspondantes sont donc désactivées.
```html
```html
<el-tree
<el-tree
:data="data3"
:data="data"
:props="defaultProps"
:props="defaultProps"
show-checkbox
show-checkbox
@check-change="handleCheckChange">
@check-change="handleCheckChange">
...
@@ -196,7 +196,7 @@ Les checkbox des noeuds peuvent être désactivées individuellement.
...
@@ -196,7 +196,7 @@ Les checkbox des noeuds peuvent être désactivées individuellement.
exportdefault{
exportdefault{
data(){
data(){
return{
return{
data3:[{
data:[{
id:1,
id:1,
label:'Niveau un 1',
label:'Niveau un 1',
children:[{
children:[{
...
@@ -243,7 +243,7 @@ Certains noeuds peuvent être ouverts et/ou sélectionnés par défaut.
...
@@ -243,7 +243,7 @@ Certains noeuds peuvent être ouverts et/ou sélectionnés par défaut.
:::demo Utilisez `default-expanded-keys` et `default-checked-keys` pour réglez respectivement les noeuds ouverts et les noeuds sélectionnés par défaut. Notez que `node-key` est requis dans ce cas. Sa valeurs est le nom d'une clé dans l'objets data, et sa valeur devrait être unique dans tout l'arbre.
:::demo Utilisez `default-expanded-keys` et `default-checked-keys` pour réglez respectivement les noeuds ouverts et les noeuds sélectionnés par défaut. Notez que `node-key` est requis dans ce cas. Sa valeurs est le nom d'une clé dans l'objets data, et sa valeur devrait être unique dans tout l'arbre.
```html
```html
<el-tree
<el-tree
:data="data2"
:data="data"
show-checkbox
show-checkbox
node-key="id"
node-key="id"
:default-expanded-keys="[2, 3]"
:default-expanded-keys="[2, 3]"
...
@@ -255,7 +255,7 @@ Certains noeuds peuvent être ouverts et/ou sélectionnés par défaut.
...
@@ -255,7 +255,7 @@ Certains noeuds peuvent être ouverts et/ou sélectionnés par défaut.
exportdefault{
exportdefault{
data(){
data(){
return{
return{
data2:[{
data:[{
id:1,
id:1,
label:'Niveau un 1',
label:'Niveau un 1',
children:[{
children:[{
...
@@ -306,7 +306,7 @@ Certains noeuds peuvent être ouverts et/ou sélectionnés par défaut.
...
@@ -306,7 +306,7 @@ Certains noeuds peuvent être ouverts et/ou sélectionnés par défaut.
:::demo Cet exemple montre comment récupérer et sélectionner des noeuds. Vous pouvez utiliser deux approches: les noeuds ou les clés. Dans le cas des clés, `node-key` est requis.
:::demo Cet exemple montre comment récupérer et sélectionner des noeuds. Vous pouvez utiliser deux approches: les noeuds ou les clés. Dans le cas des clés, `node-key` est requis.
```html
```html
<el-tree
<el-tree
:data="data2"
:data="data"
show-checkbox
show-checkbox
default-expand-all
default-expand-all
node-key="id"
node-key="id"
...
@@ -351,7 +351,7 @@ Certains noeuds peuvent être ouverts et/ou sélectionnés par défaut.
...
@@ -351,7 +351,7 @@ Certains noeuds peuvent être ouverts et/ou sélectionnés par défaut.
data(){
data(){
return{
return{
data2:[{
data:[{
id:1,
id:1,
label:'Niveau un 1',
label:'Niveau un 1',
children:[{
children:[{
...
@@ -407,7 +407,7 @@ Le contenu des noeuds peut être personnalisé, afin de pouvoir ajouter des icô
...
@@ -407,7 +407,7 @@ Le contenu des noeuds peut être personnalisé, afin de pouvoir ajouter des icô
<divclass="block">
<divclass="block">
<p>Avec render-content</p>
<p>Avec render-content</p>
<el-tree
<el-tree
:data="data4"
:data="data"
show-checkbox
show-checkbox
node-key="id"
node-key="id"
default-expand-all
default-expand-all
...
@@ -418,7 +418,7 @@ Le contenu des noeuds peut être personnalisé, afin de pouvoir ajouter des icô
...
@@ -418,7 +418,7 @@ Le contenu des noeuds peut être personnalisé, afin de pouvoir ajouter des icô
<divclass="block">
<divclass="block">
<p>Avec un slot</p>
<p>Avec un slot</p>
<el-tree
<el-tree
:data="data5"
:data="data"
show-checkbox
show-checkbox
node-key="id"
node-key="id"
default-expand-all
default-expand-all
...
@@ -485,8 +485,8 @@ Le contenu des noeuds peut être personnalisé, afin de pouvoir ajouter des icô
...
@@ -485,8 +485,8 @@ Le contenu des noeuds peut être personnalisé, afin de pouvoir ajouter des icô
}]
}]
}];
}];
return{
return{
data4:JSON.parse(JSON.stringify(data)),
data:JSON.parse(JSON.stringify(data)),
data5:JSON.parse(JSON.stringify(data))
data:JSON.parse(JSON.stringify(data))
}
}
},
},
...
@@ -546,7 +546,7 @@ Les noeuds peuvent être filtrés par mot-clé.
...
@@ -546,7 +546,7 @@ Les noeuds peuvent être filtrés par mot-clé.
<el-tree
<el-tree
class="filter-tree"
class="filter-tree"
:data="data2"
:data="data"
:props="defaultProps"
:props="defaultProps"
default-expand-all
default-expand-all
:filter-node-method="filterNode"
:filter-node-method="filterNode"
...
@@ -571,7 +571,7 @@ Les noeuds peuvent être filtrés par mot-clé.
...
@@ -571,7 +571,7 @@ Les noeuds peuvent être filtrés par mot-clé.
data(){
data(){
return{
return{
filterText:'',
filterText:'',
data2:[{
data:[{
id:1,
id:1,
label:'Niveau un 1',
label:'Niveau un 1',
children:[{
children:[{
...
@@ -692,7 +692,7 @@ Vous pouvez déplacer les noeuds par drag'n drop en ajoutant l'attribut `draggab
...
@@ -692,7 +692,7 @@ Vous pouvez déplacer les noeuds par drag'n drop en ajoutant l'attribut `draggab
:::demo
:::demo
```html
```html
<el-tree
<el-tree
:data="data6"
:data="data"
node-key="id"
node-key="id"
default-expand-all
default-expand-all
@node-drag-start="handleDragStart"
@node-drag-start="handleDragStart"
...
@@ -710,7 +710,7 @@ Vous pouvez déplacer les noeuds par drag'n drop en ajoutant l'attribut `draggab
...
@@ -710,7 +710,7 @@ Vous pouvez déplacer les noeuds par drag'n drop en ajoutant l'attribut `draggab