vuejs2 - Vuex动态数组在开始时没有声明
问题描述
我有一个包含布尔“数组”的状态。
state:{ myArray:{} }
我使用突变来设置值
mutations: {
Deactivate: function (state, name) {
var storeName = 'Default';
if (name)
storeName = name.storeValue;
state.myArray[storeName] = false; //got a function for activate
},
我得到了一个使用具有给定“名称”的数组的组件。
this.$store.state.ABC.myArray[this.name];
除非我在状态声明中声明布尔值,否则我的组件永远不会用存储值刷新。
state:{ myArray:{ Default: false } }
我是否错过了一些东西,以便刷新使用数组的组件并且我没有声明数组的每个部分。(动态数组/对象)
解决方案
在文件的开头,您可以导入 vue setter :
import { set } from 'vue'
当您为对象分配键/值时,您应该使用这种方法:
set(state.myArray, 'storeName', false);
推荐阅读
- php - 删除php数组中的重复值
- java - 使用准备好的语句以 blob 格式将图像插入数据库
- ruby-on-rails - Dockerizing 现有 Rails 应用程序
- node.js - 在托管程序中将我的域重定向到我的 vps 服务器不起作用
- rust - 在 Rust 的 Cursive 库中更新 TextView 的正确方法
- android - Android/Kotlin 中的操作顺序
- javascript - javascript按目录读取多个文件
- c# - Unity 3d 碰撞检测
- android - 使用 Mapbox Android 中的循环从 geojson 添加许多符号图标?
- sockets - 游戏客户端如何从服务器接收 UDP 数据?