分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

动态修改JS对象的值及React setState

发布时间:2023-09-06 02:24责任编辑:胡小海关键词:React
???

一、在JS里使用(非ES6)

实现场景: 给一个空对象填充某一指定数组内的值 并随机生成数量

const fruit = [‘apple‘, ‘banana‘, ‘orange‘]let fruitInfo = {}fruitInfo = fruit.map(item => { ???return { ?????[item]: Math.floor(Math.random() * 10) ???}})console.log(fruitInfo)

输出:

[{apple: 2},{banana: 1},{orange: 9}]

这里的重点在于返回的时候 通过[]可以成功调用变量的值.

???

二、React setState的应用

和上面例子同理.利用[]调用变量

class Example extends PureComponent{ ???... ???handleChange = (val, type) => { ???????this.setState({ ?????????[type]: val ???????},() => { ?????????console.log(`当前${type}的数量: ${this.state[type]}`) ???????}) ?} ???... ???render(){ ???????... ???????return ( ?????????<Fagement> ???????????<span>Banana: </span> ???????????????<select onChange={(e) => this.handleChange(e.target.value, ‘banana‘)}> ?????????????????<option value ="1">1</option> ?????????????????<option value ="2">2</option> ???????????????</select><br /> ???????????????????????<span>Orange: </span> ???????????????<select onChange={(e) => this.handleChange(e.target.value, ‘orange‘)}> ?????????????????<option value ="1">1</option> ?????????????????<option value ="2">2</option> ???????????????</select> ?????????</Fagement> ???????) ???}}

我们分别选择第二项的时候看看输出的结果

输出: .

当前banana的数量: 2当前orange的数量: 2

动态修改JS对象的值及React setState

原文地址:https://www.cnblogs.com/soyxiaobi/p/10040829.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved