생활
React.js에서 immutability helper 를 사용해 state에 배열을 추가하려고 합니다.
immutability 사용해 array push 하는 과정 중 아래와 같은 에러가 발생했습니다.
update(): expected target of $push to be an array; got undefined.
현재 $push 의 대상은 contactData 배열로 위 오류구문을 이해 할 수 없습니다.
과거의 자료를 보고 공부하고 있기 때문에 문법적인 변동사항이 있거나,
제가 찾지 못한 문제점이 있다면 알려주세요.
저의 코드는 아래와 같습니다.
handleCreate(contact){ this.setState({ contactData: update(this.state.contactdata, { $push: [contact] }) }); }handleClick(){ const contact = { name: this.state.name, phone: this.state.phone }; this.props.onCreate(contact); }contactData: [{ name: 'Abet', phone: '010-0000-0001' },{ name: 'Betty', phone: '010-0000-0002' },{ name: 'Charlie', phone: '010-0000-0003' },{ name: 'David', phone: '010-0000-0004' }]55글자 더 채워주세요.
1개의 답변이 있어요!
- this.state.contactdata
가 undefined라는 것 같은데요.
혹시 this.state.contactData 아닌가요?대소문자 문제인 것 같습니다. 다른 의심되는 부분은 $push: contact 이 부분인데, 이 보다는 대소문자가 제일 의심되네요.