本文介绍了Vue.js中的一个全局数据结构的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 我正在使用Vue.js构建单页应用程序。这是一个相对简单的应用程序,更像是一个扩展的,固定的电子表格。我正在使用 vue-router 来处理应用程序的不同视图,一些用于输入新数据,一些用于执行数据计算,但所有数据都是交织在一起(在视图#1中输入的数据用于在视图#2中输入数据,然后两者用于计算视图#3中的内容)。I am building a single page app with Vue.js. It's a relatively simple app, more like an extended, opinionated spreadsheet. I'm using vue-router to handle different views of the app, some are used to enter new data, some are used to perform calculations on the data but all that data is intertwined (data entered in view #1 is used to enter data in view #2 and then both are used to calculate something in view #3).这意味着我需要全球数据结构。根据我的研究,我发现我有几种方法可以解决这个问题:That means I need a global data structure. From my research I found that I have several options to handle that: 正确的方式:在组件中发出事件并处理它们父母; 通过 $ parent。$ data 我当前的解决方案,将父数据引用分配给子数据对象如下所示:const REPORTS = { template: templates.reports, data: function(){ return this.$parent.$data }};然而,我的第六感告诉我这不是一个好习惯。However, my sixth sense is telling me that it's not a good practice.如果我是对的,有哪些更好的方法可以实现这一目标:一,全球数据结构,可从所有组件访问?推荐答案你要找的是中央国家管理正如文档所说:What you are looking for is a central state management as docs says:你可以查看我的其他答案此处和此处You can have a look at my other answers here and here Vuex 州可以通过 getters ,使用同步更新突变,通过动作从所有vue组件异步更新,甚至划分进入不同的模块。Vuex state can be read via getters, updated synchronously using mutations, updated asynchronously via actions from all the vue components and even divided into different modules. 这篇关于Vue.js中的一个全局数据结构的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云! 08-04 06:20