温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

react如何改变列表状态

发布时间:2023-01-13 13:45:51 来源:亿速云 阅读:127 作者:iii 栏目:web开发

本篇内容介绍了“react如何改变列表状态”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

react改变列表状态的方法:1、打开相应的react文件;2、循环一个列表,然后通过index改变原数组项;3、通过state更改原数组,使列表重新渲染即可。

React 修改循环列表的当前单个子项状态

需求

循环一个列表,通过共用的某个操作,点击某一个子项时,只让这个子项发生变化,其他项不变。

思路

循环一个列表,通过index改变原数组项,并通过state更改原数组,使列表重新渲染。

使用UI组件

我这里用的React开发, 插件使用antd, 这里无论什么插件使用,只要理解上面的思路即可。

演示效果

react如何改变列表状态

代码实现

import React from 'react';
import { Layout,List, Button } from 'antd';

export default class App extends React.Component{
 state={    
    list:[
     {
       "seqNo": 1001,
       "appname_en": "Baidu's website",
     },
     {
       "seqNo": 1002,
       "appname_en": "Google's official website",
     },
     {
       "seqNo": 1003,
       "appname_en": "Amazon.com",
     },
     {
       "seqNo": 1004,
       "appname_en": "Sina website",
     },
     {
       "seqNo": 1005,
       "appname_en": "Tencent's official website",
     },
     {
       "seqNo": 1006,
       "appname_en": "Netease's official website",
     },
     {
       "seqNo": 1007,
       "appname_en": "China yahoo website",
     }
   ]
 }
 handleItem=(index,isReject)=>{
   let list = this.state.list;
   list[index].isReject = isReject;
   this.setState({
     list
   })
 }
 render(){
   return (<div style={{padding:'0 20px'}}>
         <List
         className="demo-loadmore-list"
         itemLayout="horizontal"
         dataSource={this.state.list}
         renderItem={(item,index) => (
           <List.Item
             actions={[item.isReject===0?'已驳回':item.isReject===1?'已通过':<>
               <Button type="dashed" onClick={()=>this.handleItem(index,0)}>驳回</Button>,
               <Button type="dashed" onClick={()=>this.handleItem(index,1)}>通过</Button></>
             ]}
           >
             <List.Item.Meta
               title={<a href="https://ant.design">{item.appname_en}</a>}
               description="Ant Design, a design language for background applications, is refined by Ant UED Team"
             />
             <div>content</div>
           </List.Item>
         )}
       />

   </div>
   );
 }
}

代码使用

如果你使用的时antd插件,上面例子代码复制下来,放到你的某个组件里即可。 如果不是,只要理解核心思想是改变了原数组,使重新渲染数组就好。 

“react如何改变列表状态”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI