Javascript/React

react.js 공부 state 수정 #4

728x90
반응형

해당 내용은 유튜브 코딩애플님의 채널에서 공부하여 작성된 내용임을 밝힙니다.

 

onClcik={ 제목바꾸기함수( ) }

이때 함수에 괄호를 붙히면 바로 실행되기 때문에, 바로 실행이 아닌경우 괄호는 제외해야 한다.

 

리액트에서 useState로 생성된 데이터를 수정하기 위해선

특정 함수에 데이터를 복사한 다음 수정 후 변경 함수를 사용하여 수정하는 식의 진행이 좋다.

이러한 방식을 '리액트 대 원칙 : immutable data'라고 부른다.

 

let [글제목, 글제목변경] = useState(['남자 코드 추천','신제품 후기','음악 들어본 후기']);

var newArray = 글제목;

위와 같이 작성하는건 값을 복사하는게 아니라 값 공유이다.

똑같은 값을 공유하는거다. (refernce data type 임)

그래서 이러한 방식이 아닌 deep copy를 해야한다.

 

deep copy

값 공유x

서로 독립적인 값을 가지는 복사

[...글제목]

이렇게 중괄호와 ...를 사용해야한다.

 

<Array, Objact state 데이터 수정 방법>

- 일단 변경함수 써야함

- 변경함수 (대체할데이터)

 

** state는 직접 건들지 마센

 

1. 일단 기존 state 카피본 만들고

2. 카피본에 수정사항 반영하고 (deep copy해서 그걸 수정 할 것!!!)

3. 변경함수()에 집어넣기

 

 

 

 

728x90
반응형