vue递归组件的状态被共享

用递归组件渲染目录时,出现打开一个目录所有目录一起打开了的情况,感觉应该是这些组件都共享了一组状态,请问如何能让递归出的每组内容都有独立的状态?

阅读 2.3k
1 个回答

找到原因了,因为v-for循环时每组都共用了一个状态,和递不递归没关系。我也是一出现递归就有点蒙了,这么明显的问题居然找了半天。

解决办法就是把循环体中的内容单独写成一个组件,要嵌套内容的位置给出插槽,再在递归组件中使用那个组件进行渲染

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题