当我使用 createSlice Reducer 增加值时,curentamount 没有定义,没有 undef

curentamount is not defined, no-undef, when I increment value using createSlice Reducer

reduxSlice 文件中,我收到一个错误 - 'curentamount' 未定义 no-undef.

Redux 切片:

import { createSlice } from '@reduxjs/toolkit'

export const addtoSlice = createSlice({
  name: 'addto',
  initialState: {
    curentamount: 0,
  },
  reducers: {
    incriment: (state) => {
      state.curentamount = curentamount + 1
    },
    decriment: (state) => {
      state.curentamount = curentamount - 1
    },
  },
})

export const { incriment, decriment } = addtoSlice.actions

export const selectadto = (state) => state.addtoSlice.curentamount

export default addtoSlice.reducer

React 组件:

import React from 'react'
import addList from './features/auth/ads.json'

const Addtocart = () => {
  return (
    <div>
      {addList.map((add) => (
        <div key={add.id}>
          <div> {add.addname}</div>
          <div> {add.price}</div>
        </div>
      ))}
    </div>
  )
}

export default Addtocart

错误信息:

Failed to compile.

src/features/auth/addtoSlice.js
  Line 11:34:  'curentamount' is not defined  no-undef
  Line 14:34:  'curentamount' is not defined  no-undef

curentamount 未在第 state.curentamount = curentamount + 1 行定义。你可以写任何这些:

state.curentamount++
state.curentamount += 1
state.curentamount = state.curentamount + 1

或者,从负载中读取 changeBy 值(如果您正在发送):

incriment: (state, action) => {
  state.curentamount += action.payload.changeBy
},

在有效负载中发送 changeBy 的示例:

// in a component
useEffect(() => {
  dispatch(incriment({ changeBy: 10 }))
}, [dispatch])