如何做到赋值另一个变量,其值改变,原来的值保持不变

项目中有一个问题是在一个下拉选择的表单,当改变其值时表单下边会出现新的特定的表单需要填写,所以在选择一个值的时候,进行下边的表单填写,但当此时再改变选择的值,下边的表单将变为初始值,当时是在created中把下边动态改变的表单初始的值保存下来,因为created只在渲染dom时运行一次

  <el-form ref="form" :model="form" label-width="80px">
      <el-form-item label="活动区域">
        <el-select v-model="form.region" placeholder="请选择活动区域" @change="changeData">
          <el-option label="上海" value="shanghai"></el-option>
          <el-option label="北京" value="beijing"></el-option>
          <el-option label="山东" value="shanghai"></el-option>
          <el-option label="内蒙古" value="beijing"></el-option>
        </el-select>
      </el-form-item>
      <!-- 下边的数据根据上边的改变展开为初始值  -->
      <el-form-item label="活动名称">
        <el-input v-model="form.name"></el-input>
      </el-form-item>
      <el-form-item label="人员年龄">
        <el-input v-model="form.age"></el-input>
      </el-form-item>
      <el-form-item label="活动地址">
        <el-input v-model="form.address"></el-input>
      </el-form-item>
      <el-form-item label="人员联系方式">
        <el-input v-model="form.phone"></el-input>
      </el-form-item>
    </el-form>

 data() {
    return {
      form: {
        region: "",
        name: "party",
        age: "",
        address: "",
        phone: ""
      },
      textData:{}
    };
  },
  methods: {
   //当改变值时将之前填写的表单数据变为原始的数据
    changeData(){
      this.form =JSON.parse(this.textData)
    }
  },
  created() {
    this.textData =JSON.stringify(this.form) ;
  },

主要的是用 JSON.parse(JSON.stringify(this.form))保存下,若直接赋值,则一个值改变,另一个打印出来的也是改变以后的值,原理就是和堆和栈有关,所以要想变为原来的值需要保留原来的值,用这个办法

原文地址:https://www.cnblogs.com/yanyanliu/p/12043726.html

时间: 2024-07-30 09:27:09

如何做到赋值另一个变量,其值改变,原来的值保持不变的相关文章

sql server 查询出的结果集,拼接某一列赋值给一个变量

现有表Area 如下: SELECT [Areaid] ,[Areaname] ,[Areapid] FROM [Northwind].[dbo].[Area] 查询结果如下图: 需求:用 “-“ ”拼接所有的Areaname赋值给一个字符串变量: 解决方法: declare @s nvarchar(4000); set @s = ''; select @s = @s + [Areaname] + '-' FROM [Northwind].[dbo].[Area] select @s; 查询结果

JavaScript基础 定义一个变量,但没有赋值,输出为undefined

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=ut

php中unset一个变量之后, 通过引用赋值引用这个变量的变量会被unset吗?

在php中变量的赋值分为按值赋值,  和引用赋值. 在按值赋值中, $a = val;  $b = $a ; 可以看成$a = val; $b =val;变量b被赋予a的值之后,  a和b便没有任何的引用关系了, 此时改变其中任意一个值, 另外一个值不会受到影响. 在引用传值种, $a = val; $b = &$a;  也可以看成$a = val; $b =val; 不过变量a和b还要满足一个条件就是必须相等, 因为两个变量有着共同的引用, 当一个值改变时, 另外一个值也跟着改变.  如 在给

sql server exec 查询数据,将查询出来的数据赋值给一个定义的变量

sql server exec 查询数据,将查询出来的数据赋值给一个定义的变量 declare @num int, @sqlnum nvarchar(500) set @sqlnum=N''; set @sqlnum =N'select @a=max(SINGLE_CORE_COUNT) from SFC_MODULE_STACKING_DATA where '+@strsql; exec sp_executesql @sqlnum,N'@a int output',@a=@num output

Python--函数内部变量都是临时的,当函数返回以后,返回值可以赋予一个变量。

#coding=utf-8print "Let's practice everything."print ' You\'d need to know\'bout escapes with \\ that do \n newlines and \t tabs.' poem = """\tThe lovely worldwith logic so firmly plantedcannot discern \n the needs of lovenor comp

判断一个变量是否存在,值是否为空的方法

sset()和 unset()用来判断一个变量是否存在,返回的是布尔值true或 false. empty()用来判断一个变量的值是否为空,如果为空则为 true否则为 false. 换句话说, "". 0. "0". NULL. FALSE. array(). var$var; 以及没有任何属性的对象都将被认为是空的

Python把同一个对象循环赋值给另外一个变量

Python把同一个对象循环赋值给另外一个变量,修改一个对象,其他对象也修改了 >>> row=['_'] * 3 >>> board = [] >>> for i in range(3): ... board.append(row) ... >>> row ['_', '_', '_'] >>> board [['_', '_', '_'], ['_', '_', '_'], ['_', '_', '_']] &g

int变量赋值给char变量的本质

本质上,int变量将其最低一个字节的内容,赋值给char变量. 如下代码: int a = 0xFFFFFF41; char c = a; printf("c: %c\n", c); 根据小端存储模式,a的低位一字节存放的是十六进制数41,它的十进制数是65,对应的ASCII字符是A. 由于a的低位一字节内容赋值给了c,因此c的值就是十进制数65,输出字符结果为A.

【C语言】指针是一个变量

1)指针是一个变量,是用来存放地址的变量,占有内存空间,用来保存内存地址: 2)在指针声明时,*号表示所声明的变量为指针 在指针使用时,*号表示操作 “指针所指向的内存空间中的值”: *p相当于通过地址找到一块内存,然后操作内存: *p放在等号左边赋值(给内存赋值): *p放在等号右边取值(从内存获取值): 3)指针变量和它所指向的内存块是两个不同的概念 含义1:给p赋值p=0x1111:只会改变指针变量值,不会改变所指向的内容: 含义2:给*p赋值*p='a';不会改变指针变量的值,只会改变所