vue中props使用的疑惑

星之旅人
  • 237

Article.vue是父组件,ArticleComments.vue是子组件,子组件发表评论和展示评论列表。获取文章内容 评论列表和发表评论需要文章id文章id存在vuex state里,下面两种方式那种比较好呢

  1. 父组件获取文章内容和评论列表后通过props传入子组件,文章id和发表评论的方法也通过props传入子组件
  2. 不使用props,子组件自己进行请求,所需方法定义在子组件内,文章id也直接通过store.state获取
回复
阅读 2.1k
4 个回答
✓ 已被采纳

推荐第二种,可以降低组件之间的耦合度,另外,请求的函数也推荐放到一个统一放请求函数的目录中,有助于将model层和view层分开

通过 props 传递会增加组件的耦合性,组件之间应该是独立的,既然 id 存在于 store 里,应该用过 store 取,没必要在父组件里取出来再传递给子组件。

还是用第二种吧 我之前也是第一种 但是后台请求到数据子组件不更新视图

为啥这类数据要用vuex存储啊,需要全局共享吗?

宣传栏