工作中的redux小技巧

1.使用actionTypes.js文件定义Type减少代码冗余,代码复用

export const CHANGE_INPUT='changeInput'
export const ADD_ITEM='addItem'
export const DELETE_ITEM='deleteItem'
import {CHANGE_INPUT,ADD_ITEM,DELETE_ITEM} from './store/actionTypes'

2.使用actionCreators.js统一管理action

actionCreators.js

复制代码
import {CHANGE_INPUT,ADD_ITEM,DELETE_ITEM} from './actionTypes'

export const changeInputAction=(value)=>({
    type:CHANGE_INPUT,
    value
})

export const addItemAction=()=>({
    type:ADD_ITEM,
    })

export const deleteItemAction=(index)=>({
    type:DELETE_ITEM,
    index
})
复制代码

TodeList.js

复制代码
import { changeInputAction,addItemAction,deleteItemAction } from './store/actionCreators';

changeInputValue(e){
        //e:改变的值都可以监听到
         //console.log(e.target.value)
        //  const action={
        //     type:CHANGE_INPUT,
        //     value:e.target.value
        //  }
         const action=changeInputAction(e.target.value)
         store.dispatch(action)
    }
    clickBtn(){
        // const action ={type:ADD_ITEM}
        // store.dispatch(action)
        const action=addItemAction()
        store.dispatch(action)
    }
    deleteItem(index){
        // const action ={
        //     type:DELETE_ITEM,
        //     index
        // }
        const action=deleteItemAction(index)
        store.dispatch(action)
    }
复制代码

 

posted @   SimoonJia  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示