2016-08-17 3 views
0

Redux tutorial series을 따르고 있습니다. Dan Abramov는 Redux 저장소를 처음부터 만드는 방법을 보여줍니다. 여기에 코드의 조각 처음부터 Redux 저장소 구현

listeners.forEach(listener => listener()); 

나는 그것이 청취자의 배열 &의 모든 요소를 ​​반복 알고

각 요소를 전달,

const createStore = (reducer) => { 
let state; 
let listeners = []; 

const getState =() => state; 

const dispatch = (action) => { 
    state = reducer(state, action); 
    listeners.forEach(listener => listener()); 
}; 

const subscribe = (listener) => { 
    listeners.push(listener); 
    return() => { 
    listeners = listeners.filter(l => l !== listener()); 
    }; 
}; 

dispatch({}); 

return {getState, dispatch, subscribe}; 
} 

디스패치 함수 내에서 다음 줄을 내가 대해 혼란 스러워요 무엇이다 화살표 기능.

는하지만이 수신기를()

+1

당신은'listeners' 배열에 숫자를 넣었고 그 숫자를 함수로 호출하려고합니다. – Dieterg

+0

파견 기능 내부의 라인을 설명해 주시겠습니까? – TA3

+1

함수를 사용하여'store'에 가입해야합니다. 'action'을 디스패치하면 모든 리스너 함수가 호출됩니다. – Dieterg

답변

0

listeners 할 무엇을하면 리스너 함수를 통해 기능 때문에 listeners.forEach(listener => listener()); 반복의 배열과 listener() 그들을 호출합니다.

관련 문제