elementUI树结构Tree修改/编辑原节点变为input输入框

Posted 萌萌的DDD

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了elementUI树结构Tree修改/编辑原节点变为input输入框相关的知识,希望对你有一定的参考价值。

思路分析

点击修改,节点由span变input,input中显示的内容为原节点内容,并获得焦点全选
修改后,失去焦点,由input变回span,节点内容修改

<h4>那这样我们需要一个数据内容来控制input和span切换的值</h4>

数据内容

.

在接口返回的数据中,添加showInput字段,来控制什么时间切换节点标签

html结构

    <el-tree
              class="tree"
              :data="treeData"
              @node-click="handleNodeClick"
              @node-contextmenu="nodeRigthClick"
              ref="tree"
            >
              <span class="custom-tree-node" slot-scope="{ node, data }">
                <span v-if="!data.showInput">{{ node.label }}</span>
                <el-input
                  size="mini"
                  ref="inputVal"
                  v-if="data.showInput"
                  :value="data.label"
                  @focus="focus($event)"
                  @input="a => inp(a, data)"
                  @blur="alters(node, data,$event)"
                  v-focus
                >
              </el-input>
            </span>
      </el-tree>

在span和input中同时绑定showInput

注意,如果data数据如我所建造,input中不可用v-model,因为,数据为只读,双向绑定不能修改

绑定方法

注意:

因为elementUI 中的el-input自带的input事件会自带Value值,所以需要嵌套函数来接受,内部绑定事件传值,否则接收不到

由此根据绑定事件修改showInput的值来控制节点切换

以上是关于elementUI树结构Tree修改/编辑原节点变为input输入框的主要内容,如果未能解决你的问题,请参考以下文章

ElementUI tree控件怎么通过子节点去找到父节点

vue 数据对象内部属性变化 dom无法更新视图问题(elementui tree组件修改节点数据无法更新视图的问题)

elementUIel-tree搜索时加载子节点对应父节点父节点对应子节点树

2020-12-01ElementUI的tree实现单选,再次点击取消选中

elementUI树形组件添加连线和自定义图标

Element-Ui el-tree 超出部分自动换行