首页 > 解决方案 > 使用传递给多个子组件的道具的最佳方式

问题描述

在编辑产品页面时,我有一个父组件,其中包含 created_at 和 updated_at 的表单组件和详细信息组件。

表单是编辑现有数据和详细组件将在表单旁边。

我之前没有详细组件,所以我从表单组件中获取数据并在组件中使用它,但是我需要一些详细组件的数据,它是表单组件的父组件的子组件。

所以我将 fetch axios 移动到父组件,现在将数据传递给两个子组件。

这样做更好还是在表单组件和详细组件中发送axios请求更好?

该表格还用于添加新产品。

标签: vue.jscomponentsparent

解决方案


我的意见是,您应该尽可能从最高级别触发请求。这样,您的子组件(构建块)可以独立于您当前的上下文工作。它被称为展示组件,它的作用是输出一些标记。容器组件将数据提供给展示组件,使数据流从上到下很好地流动。

所以简而言之,你做对了!但是您应该小心,当您的数据在编辑表单中发生更改时,您可能希望再次在父级上触发请求,以便为整个应用程序更新数据。Vuex 极大地促进了这种流程。它充当整个应用程序可以依赖的单一事实(数据)来源。


推荐阅读