본문 바로가기

---- Contents ----164

이벤트 루프 function first() { second(); console.log('1번째') } function second() { third(); console.log('2번째') } function third() { console.log('3번째') } first(); 실행 순서 3번째, 2번째, 1번째 Stack => 빠질때는 들어왔던 순서 반대로 나간다. 호출 스택(콜스택) console.log('1번째') console.log('2번째') console.log('3번째') (third) (second) (first) 언제 Task Que에 들어가나?******* 이벤트 루프가 알아서, 우선수위 순서 맞춰서 끄내서 실행 시킨다. ex) setTimeout, setInterval, setImmediate,.. 2019. 10. 19.
contextAPI, provider 설정, createContext( ) createContext ( ) 기본 값을 넣을 수 있다. contextAPI 접근하고 싶은 COMPONENT를 PROVIDER로 묶어준다. 데이터는 value 에 넣는다. 자식 컴포넌트에서도 데이터값을 접근할 수 있다. 값은 value안에다 넣어주어야 한다. const TableContext = createContext( { tableData : [ ], dispatch : ( ) => { }, }); const value = useContext(TableContext); useMemo를 사용하여 새로운 객체가 생기지 않도록 도와준다. 렌더링을 하면 객체가 생겨 자식 컴포넌트에게 전달이 될 수 있기 때문임. 그 후, 언제 바뀌는지 배열 안쪽에 선언해주면 된다. const value = useMemo (.. 2019. 10. 17.
dispatch ( { } ), action 객체를 실행. reducer 기록 dispatch ( { } ), {action} 객체를 실행한다. ex) const SET_WINNER = 'SET_WINNER'; const reducer = ( state, action ) => { switch ( action.type ) { case SET_WINNER: //state.winner = action.winner; 이렇게 하면 안됨. return { ...state, // 기존 state spread 후, action 실행. winner : action.winner, } } } const onClickTable = useCallBack( ( ) => { // action객체를 dispatch해서 state를 바꿔준다. dispatch( { type : 'SET WINNER' , winn.. 2019. 10. 17.