问题标签 [vuex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
421 浏览

vue.js - 方法 --> 动作 --> 变异 --> 状态问题

我的函数应该使用自身的参数将 JSON 迭代地插入到特定级别的嵌套 JSON 的每个元素中,它复制了返回的第一个对象并将其插入到每个嵌套参数中。请参阅下面的屏幕截图和代码,以了解我在做什么。

基本上,我在状态中有一个嵌套的 JSON 对象,并且需要使用从 API 返回 JSON 的操作然后更新状态的突变迭代地附加到现有对象的每个“行”的嵌套属性。

问题在于我认为的突变。我推断我的函数是复制从 API 返回的第一个 JSON 对象。请参阅下面的 Action 和 Mutation 函数,以及 JSON 的 API 函数和结构。

http://api.capecodcommission.org/docs/index.html#sumofannualcapitaltotalsfortreatment

特定组件中的函数使用 v-for 运行:

运行函数,查看 JSON:

V-for 循环:

接口函数:

行动:从 API 中提取 JSON,调度突变函数。

突变:使用 JSON 更新状态。

编辑:下面的图片

组件:http: //i.imgur.com/lcS5Fgo.jpg

JSON结构:http: //i.imgur.com/AsANZOp.jpg

0 投票
1 回答
6344 浏览

javascript - 在 Vuex getter 中使用组件道具的正确方法是什么?

假设您有一个简单的应用程序组件,其中包含一个按钮,可以使用 vuex 商店从计数器组件中添加多个计数器。

这是关于 webpackbin 的全部内容。

有点像vuex git repo中的基本反例。但是您想使用带有通过组件上的属性传递的 ID 的 vuex getter,您会怎么做?

getter 必须是纯函数,因此您不能使用this.counterId. 官方文档说您必须使用计算属性,但这似乎也不起作用。此代码为 getter 返回 undefined:

0 投票
7 回答
64383 浏览

javascript - Vue.js 2.0 中兄弟组件之间的通信

概述

在 Vue.js 2.x 中,model.sync将被弃用

那么,在Vue.js 2.x中的兄弟组件之间进行通信的正确方法是什么?


背景

据我了解 Vue.js 2.x,兄弟通信的首选方法是使用 store 或 event bus

根据Evan(Vue.js 的创建者)的说法:

还值得一提的是“在组件之间传递数据”通常是一个坏主意,因为最终数据流变得无法跟踪并且很难调试。

如果一条数据需要被多个组件共享,首选 全局存储Vuex

[讨论链接]

和:

.once.sync已弃用。道具现在总是单向下降。为了在父作用域中产生副作用,组件需要显式地显示emit一个事件,而不是依赖于隐式绑定。

因此,Evan 建议使用$emit()and $on()


关注点

我担心的是:

  • 每个storeevent具有全局可见性(如果我错了,请纠正我);
  • 每次小交流都新建一个店铺太浪费了;

我想要的是兄弟组件的一些范围 events或可见性。stores(或者也许我不明白上面的想法。)


问题

那么,兄弟组件之间的正确通信方式是什么?

0 投票
1 回答
301 浏览

javascript - 使用 Vuex 进行精细组织

我正在做一个相当大的项目,我想将Vuex模块分成尽可能多的部分。例如,我想将API功能从中分离出来UI,将来自服务器的数据与组件标志隔离开来,等等。

在文档(http://vuex.vuejs.org/en/structure.html)中,作者建议将所有内容分解为modules,这很好。当我拥有products页面和products数据时,问题就出现了,我想让它们分开。

是否有可能实现这样的目标:

并且能够像store.api.productsstore.pages.products?我弄错了吗?

谢谢!

0 投票
3 回答
6776 浏览

components - 尽管状态更新,为什么 vuex 组件没有更新?

当我加载我的页面时,我会获取一个optboxesitems列表。

来源

项目来源在线:

optboxes页面

HTTP 请求很好地发送并返回足够的数据:

我正在迭代结果如下:

店铺

问题

如果我切换到其他页面并返回,则会出现列表。我还注意到,使用 Vuex 扩展,我可以提交状态并查看更改。

为什么我的更改没有自动应用?

0 投票
3 回答
15579 浏览

vue.js - 为什么 vuex 存储更新后计算值不更新?

我得到了一个printerList计算属性,应该在getPrinters()解析后重新评估,但看起来不是。

来源在线optbox.component.vuevuexoptboxes.service.js

零件

行动

突变

问题

为什么不printerList重新评估计算的属性(即为v-for空)

0 投票
3 回答
5418 浏览

javascript - 在 VueJS 中查看存储在 Vuex 中的数组

我有一个客户列表,它实际上是一个对象数组。我将它存储在 Vuex 中。我在我的组件中呈现列表,每一行都有一个复选框。更准确地说,我使用了敏锐的 UI,复选框渲染部分如下所示:

所以复选框直接改变了客户数组,这是不好的:我在 Vuex 中使用严格模式,它会抛出一个错误。

我想跟踪数组何时更改并调用操作以更改 vuex 状态:

然而,它仍然直接改变了客户。我怎样才能解决这个问题?

0 投票
1 回答
3459 浏览

vue.js - vue.js:如何从动作中访问组件数据?

我正在使用 webpack、vue、vuex、vue-loader 等。我不确定这些设置是否正确。

然后我的行动:

我遇到的问题是,由于此表单是使用 AJAX“提交”的,因此当响应返回无效时,表单输入会保持填写状态。因此,我需要一种方法来从操作logininfo.password = ''中清除该表单字段。但我不确定如何再次访问该组件的数据。也许我误解了一些东西,这个数据(登录信息)真的应该在 vuex 存储中吗?我觉得这些数据不应该在主状态存储中,因为我实际上只是使用它来将凭据传递给后端,这就是我将数据本地化到组件的原因。

任何提示/建议?

0 投票
1 回答
7830 浏览

javascript - 从Vuex中的数组中删除特定项目

我仍在学习 vue.js 的过程中,并且正在做一个小项目,以帮助我了解有关使用 Vuex 创建更大规模应用程序的更多信息。

我遇到了一个问题,我试图使用应用程序中的按钮从数组中删除特定项目;我似乎无法在 Vuex 中获得正确的语法来执行此操作。这是我正在使用的:

店铺

行动

吸气剂

应用程序

我设置了一个操作,它将向数组中添加一个空白项,当您单击一个add item按钮时,它将在应用程序中放置一个新组件,只是不确定如何为remove item每个组件添加一个按钮并使其正常工作。

我希望这是有道理的!

0 投票
1 回答
755 浏览

javascript - Vue.js:在@click-Method 中获取当前的`v-for` Objekt

我有一个包含 v-for 的列表,其中包含几个文件夹。当我单击其中一个时,我想要执行一个函数。

我的代码如下所示:

有没有一种简单的方法可以访问当前文件夹(没有子组件)?

(我也在使用 Vuex,但由于这是一个仅 UI 的操作,无需修改数据,我认为避免 Vuex 操作的良好做法,对吧?)