我的 Vue 组件结构/层次结构目前如下所示:
- 应用程序
- PDF 模板
- 背景
- 动态模板图像
- 静态模板图像
- 降价
- PDF 模板
在应用程序级别,我想要一个 vuejs 组件方法,它可以将所有子组件的数据聚合成一个可以发送到服务器的 JSON 对象。
有没有办法访问子组件的数据?具体来说,多层深度?
如果不是,那么传递可观察数据/参数的最佳做法是什么,以便当它被子组件修改时,我可以访问新值?我试图避免组件之间的硬依赖,因此到目前为止,使用组件属性传递的唯一内容是初始化值。
更新:
扎实的答案。在查看了两个答案后,我发现有用的资源:
原文由 Daniel Brown 发布,翻译遵循 CC BY-SA 4.0 许可协议
对于这种结构,有某种Store就好了。
VueJS 对此提供了解决方案,它被称为 Vuex。如果你还没有准备好使用 Vuex,你可以创建自己的简单商店。
让我们试试这个
MarkdownStore.js
现在您可以在任何地方使用这些数据,只需导入此 Store 文件
主视图.vue
如果您不想使用 Vuex,那么这就是您可以使用的基本流程。