element ui 的树形组件绑值问题

项目中用到element UI 的树形组件tree,现在是希望组件中选中的项在打开页面时能够显示出来,自己向后台请求到数据之后,赋值给了default-checked-keys中的变量,是数组形式,可是页面中就是不显示,然而,写成静态的数组就能显示在页面中,实在不明白原理,希望知道的大神们能够指点一下。相关代码如下:

template中内容:


                        <el-tree

                          :data="user_role"

                          show-checkbox

                          node-key="user_id"

                          :default-expanded-keys="[2, 3]"

                          :default-checked-keys="checkedStaffIds"

                           :filter-node-method="filterNodeBefore"

                          :props="defaultProps"

                            ref="editStaff"

                          >

                        </el-tree>

js部分:


    getUser(){

            let self = this;

            console.log(this.EditForm.id);

            axios.get('/role/showUser',{

                params:{

                    role_id:this.EditForm.id

                        }

                    }

                ).then(function(response){

                    self.checkedStaffIds = response.data.contents.look_user;

                    console.log(self.checkedStaffIds);

            })

        },

                

数据格式:

https://img1.mukewang.com/5c94916100018d2808000112.jpg

上面赋值给checkedStaffIds 没有用,但是在data数据中直接写成下面这样却可以绑定成功:

https://img1.mukewang.com/5c949163000168a908000388.jpg

求教求教~


宝慕林4294392
浏览 2570回答 2
2回答

素胚勾勒不出你

是不是你异步请求前就初始化了tree 你可以加上个v-if判断 默认checked有值后再加载组件
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript