在写项目的时候,需要用到tree组件进行回显来进行权限控制: 在回显过程中使用回显函数会报报undefined, 这时只需要给该函数包裹一层nextTick方法就行了, 在回显过程中我们有可能使用半选,这时用setchecked就行了 2021-11 更新 nexttick函数主要是在dom更新结束后执行,上面的element方法如果你是放在模态框里面执行,那么在打开的时候节点还没有渲染,因此会报underfind,使用nexttick就是确保dom节点加载完成后再执行,这是一个异步方法,更多说…
Part.1 问题 写项目时遇到一个棘手的问题,在做关于权限功能时,点击修改需要显示角色原本对应的权限.涉及到了 tree 组件回显,但是有一个很尴尬的问题:tree 组件只要父节点选中,那么子节点就会全部被选中,这是我们不愿意看到的,可能你会说,取消父子联动属性不就好了,可是我们也需要在子节点被选中时,父节点保持半选中状态. Part.2 思路 在仔细看完 https://element.eleme.cn/#/zh-CN/component/tree#fang-fa   Element -UI…
1:问题原因:我们可能使用 this.$refs.tree.setCheckedKeys(this.defalutArr);或者使用:default-expanded-keys="treeDataSelect" :default-checked-keys="treeDataSelect"来进行回显的2.解决方法 //默认选中的树的数据 setTimeout(function () { res.data.selected.forEach((value)=>{ /…
低版本Element ui tree树形控件获取当前节点id和父节点id的方法:点击查看 最新版本Element ui tree树形控件获取当前节点id和父节点id教程: 1.找到node_modules/element-ui/lib/element-ui.common.js文件 2.按Ctrl+F搜索TreeStore.prototype.getCheckedKeys这个方法,低版本教程到这一步就直接修改了(具体看上面教程),发现没有找到if(node.checked)  如图: 但可以发现它…
其实这3个讲的是一个问题,先说下问题,我在watch里设置一个监听,当弹窗打开时,自动添加树形的默认选中项, 但奇怪的是this.$refs为undefined,自然setCheckedKeys无法使用,这个时候就要用到$nextTick,不懂的朋友先去百度下, 大致来说就是一个虚拟dom变成真实之后的一个回调,只有在回调里面才能获取到$refs,问题自然就解决了 watch: { dialogVisible (val) { if (val) { this.setDefaultChecked()…
element的DatePicker获取value的时候是日期对象如下,可以提交的时候查看参数 2019-06-30T17:02:02.000Z  如果是console.log打印出来的话,是这样的 查看了下,后台接收的时间也是这样的,所以就无需转时间戳或字符串('2019-07-01 11:42:58')了. 问题,如何在DatePicker中回显时间 应用场景:编辑 解决方案:       new Date('2019-06-30T17:02:02.000Z')或new Date('2019…
下图是一个后台管理系统,展示的是角色列表 当我点击编辑的时候,弹出一个模态框,如下图 功能需求:点击编辑按钮,弹出模态框,选择权限那块,默认选中当前角色拥有的权限. 问题:第一次点击编辑按钮时,不会选中任何选项,当第二次点击时,才会选中上一次角色的权限,也就是说,你随便点击一个编辑按钮,弹窗显示的是上一次点击 的角色权限. 1.当时感觉是同步异步的原因,但发现,同它一起的两个参数都能正常显示(角色名称和描述),所以排除了这个可能. 2.然后我就百度了一下,在技术讨论群也问了,之后发现   数组在…
Element-ui官网给的方法 getCheckedKeys() { console.log(this.$refs.tree.getCheckedKeys()); }, 这种只有在所有子级都被选中的情况下才能获得父级的id,如果不选中所有的子级那么获取得到的id就只有子级的.但是一般提交数据时后台都需要父级id的. 1.找到node_modules/element-ui/lib/element-ui.common.js文件 2.按Ctrl+F搜索TreeStore.prototype.getC…
  beforeUpload (file) { var _this = this; var reader = new FileReader(); reader.readAsDataURL(file); reader.onload = function(e) { // 图片base64化 var newUrl = this.result;    //图片路径 _this.imgUrl = newUrl; }; },…
一行代码两行泪,没有外网真可怕!好久没写博客了,更新一把. <template> <div> <el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree> </div> </template> <script> export default { data (…