2016-10-28 1 views
1

지금 당장 React의 update이 필요한 React 구성 요소 내의 내부 개체를 업데이트하고 있습니다.React에서 'update'와 setState (prevState)를 함께 사용하려면 어떻게해야합니까?

const nameState = update(this.state, { userData: {name: {$set: e.target.value} }}); 
this.setState(nameState); 

지금, 문제는 그의 setState 즉시 이러한 변경을하지 않는 반작용이지만 보류 상태 변화처럼 생성 : 여기 내 코드입니다. 따라서이 문제의 해결 방법은 prevState입니다. 이런 식으로 뭔가 :

const enteredName = e.target.value; 
    this.setState((prevState) => ({ 
    name : enteredName 
    })); 

그래서, 어떻게 prevState 사용합니까

update 기능을 사용하고 계십니까? 당신이 this.state 업데이트하는 방법과 유사

+0

주의 사항을, 'update'는 [kolodny/immutability-helper] (https://github.com/kolodny/immutability-helper)를 위해 더 이상 사용되지 않습니다. – NiFi

답변

1

: 그 [업데이트에 대한 반작용 문서 (https://facebook.github.io/react/docs/update.html)에 따라

const enteredName = e.target.value; 
this.setState(prevState => update(prevState, { userData: {name: {$set: enteredName} }})); 
관련 문제