修改 vuex $store.state 里取出的数据不响应

一定要先拷贝

let { showLabel, actualValue } = this.record;
      let show = this.rowData[showLabel];
      let actual = this.rowData[actualValue];
      const { formGroup } = this.$store.state.right;
      const { dispatch } = this.$store;
      let group = _.cloneDeep(formGroup) // 这一步必须, 如果直接 formGroup.map( ... ) 数据响应不到
      const newFormGroup = group.map(item => {
        if (item.componentx === "modal") {
          item = {
            ...item,
            uniqueKey:createUuid()
          }
          return (item = {
            ...item,
            initValue: show,
            actualValue: actual
          });
        } else {
          return item;
        }
      });
      dispatch("right/updateFormGroup", newFormGroup);
      this.visible = false;

原文地址:https://www.cnblogs.com/winyh/p/12628925.html

时间: 2024-08-27 14:48:41

修改 vuex $store.state 里取出的数据不响应的相关文章

PHP 从mysql库里取出大量数据写入excel压缩下载

$zip = new ZipArchive;if ($zip->open($filePath . date('Ymd') . '.zip',ZipArchive::OVERWRITE) === TRUE) { $count = $this->mod->getCount($cond); $num = ceil($count/5000);  //取整5000 余数进1 $z = 0; for ($j=0;$j<$num;$j++) { $limit = $j*5000; //每次查询5

Vue--vuex状态管理-多界面状态管理$store.state.变量名称 ---数据通触发事件改变this.$store.commit

1.作用需求:多个状态,在多个界面的共享问题 比如:用户的登录状态,用户名称,头像,地理位置信息等等 比如:商品的收藏, 这些状态信息,我们都可以放在同一的地方,对他进行保存和管理,而且他们还是响应式的. 2.不同于父子组件之间的传递,应用于没有直接的关系. 使用步骤: 一,Vuex是一个插件  下载: npm install vuex --save 二,创建一个文件夹store,仓库的意思,或者叫vuex,不建议直接在main.js文件中引入.就像router路由一样,这样会使main文件越来

vuex this.$store.state.属性和mapState的属性中的一点点区别

做泰康公众号的项目时候有一个需求创建公众号的时候后台有一个社区id提供给后台展现人员和部门,在群发消息时候也要给后台一个社区id只不过获取社区的id接口和上一个不是一样的,本来在页面中写了两个select,一个是用elementUI的select选择器,另一个是在标签选择器,现在在创建公众号时使用公众号社区的id让群发消息的select隐藏,我是用vuex在state里声明两个变量分别设置falese ,true,这样在引用各个接口时候v-show显示相应的数据,用this.$store.sta

从记事本里导入工资数据到数据库的写法

从记事本里导入工资数据到数据库的写法, 这种需要用的opendialog 要先添加这个组件: 1 procedure TForm3.N6Click(Sender: TObject); 2 var 3 KeFuAry: TArray<string>; 4 YueFen: string; 5 MyList: TStringList; 6 MyAdoq: TADOQuery; 7 I: Integer; 8 begin 9 MyList := TStringList.Create; 10 MyAdo

【记录】T-SQL 分组排序中取出最新数据

原文:[记录]T-SQL 分组排序中取出最新数据 示例 Product 表结构: 示例 Product 表数据: 想要的效果是,以 GroupName 字段分组,取出分组中通过 Sort 降序最新的数据,通过示例数据,可以推算出结果数据的 ID 应该为:7.5.3. 示例 SQL 代码: select * from Product p where ID=(select top 1 ID from Product where p.GroupName=GroupName order by Sort

修改sharepoint 2013站点里区域设置

cls [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint") foreach ($webApplication in Get-SPWebApplication) {     Write-Host     Write-Host "Processing $webApplication"     Write-Host "*************************

(转) 从ffmpeg中提取出YUV数据

有时需要从ffmpeg中提取出YUV数据用作预览,另存什么的. ffmpeg是先解码成YUV, 再以这个YUV作为输入进行编码,所以YUV数据有两种:  解码后的YUV数据, 以及  编码重建的YUV数据.下面分别讲两个YUV数据从哪儿?以及如何取? 1. 解码后的YUV数据在ffmpeg/libavcodec/utils_codec.c的avcodec_decode_video2() 函数中: avcodec_decode_video2(...){  ...   ret = avctx->co

〖Linux〗使用sed命令修改小端(little endian)存储的数据

1 #!/bin/bash - 2 #=============================================================================== 3 # 4 # FILE: hex_change.sh 5 # 6 # USAGE: ./hex_change.sh 7 # 8 # DESCRIPTION: 9 # 10 # OPTIONS: --- 11 # REQUIREMENTS: --- 12 # BUGS: --- 13 # NOTES:

100w 个整数里取出最大的 500 个, 可以转换为 n 个数里取出最大的 m 个

/** * 100w 个整数里取出最大的 500 个: * 可以转换为 n 个数里取出最大的 m 个,其中 m < n,采用堆排序实现,时间复杂度为 n + nlogm * 举例:12 20 9 18 7 14 几个数中取出最大的三个: * 做法:遍历所需计算的整数.创建一个节点数为3的最小堆,当堆装满后,再来的数与根节点对比,如果比根节点大,替换,然后再走到根节点相应的位置,图例如下: * (0) (1) (2) (3) (4) (5) (6) (7) (8) * 12 12 12 12 9