0

问题是这样的:我用render渲染了一个组件FormTask,FormTask中有个子组件treeButton使用了Vuex中的全局数据。
clipboard.png

然后浏览器报
clipboard.png

原因就在于render渲染出来的组件的this已经变了,不是原先Vue实例了,所以this找不到store属性,更拿不到其中的全局数据了。

deviceParentList () {
        console.log('treeButton', this)
        return this.$store.getters['getDeviceTree']
      }

问题都知道,但是就是不知道怎么解决,自己想的办法就是在渲染FormTask时往prop传入要使用的全局数据,再FormTask传给treeButton,但是这样的操作好愚蠢,不知道各位大神有没有更好的解决办法,感激不尽!!!

2个回答

1

已采纳

在render 外面var that=this 在render里面用that访问vuex

0

楼主这个问题解决了吗? 我现在也遇到麻烦,render获取不到vuex的数据,而且我的render出来的组件,里面还有一层render...

撰写答案