장바구니에 기존 아이템이 있다면 추가하는것이 아닌 갯수를 +1씩 하는걸 하고있습니다.
addItem(state, action){
let findName = state.findIndex((a)=>(action.payload.name == a.name))
let findId = state.findIndex((a)=>(action.payload.id == a.id))
if(findName >= 0){
state[findId].count++
}
else{
state.push(action.payload)
}},}})
그걸 이렇게 코드를 짜서 동작은 일단 잘하는거같아요.
여기서 궁금한점은 let findName과 findId의 내용이 너무 겹치는거 같아서
이걸 함수에 담는것이 가능한지 궁금합니다...제가 시도는 해봤는데 제 자바스크립트 실력이 부족한탓인지 안되는거같아서요 ㅠㅠㅠ
혹시 원래 이렇게 함수에 담는게 안되는데 제가 바보같이 시도하는건가요..?
예를들어, function find(apple){
return(
state.findIndex((a)=>(action.payload.apple == a.apple))
)}
이렇게 하고 if문에서
find(name) 혹은 state.[find(id)]
이런식으로 파라미터로 쓰면 코드가 간결해지지 않을까하는 생각을 해보았는데
피드백 주시면 감사하겠습니다...ㅠㅠㅠ