#react-native
#react-native
Вопрос:
Я новичок в React native и наткнулся на код для функции-редуктора, но меня смущает, почему «токен» заключен в квадратные скобки. Превращает ли это токен в динамическую вещь или что-то в этом роде?
Может кто-нибудь, пожалуйста, объяснить, почему это так? Большое вам спасибо!
/** The reducer is in charge of updating the app state based on the dispatched action. **/
//Action Types
export const CREDENTIALED = 'auth/CREDENTIALED';
export const RESET_DATA = 'auth/RESET_DATA';
export const initialState = {
isLoading: true,
token: null,
};
//REDUCER
const authReducer = (state = initialState, action) => {
switch (action.type) {
case CREDENTIALED: {
let {token} = action;
return {...state, isLoading: true, token};
}
case RESET_DATA: {
return {...state, ...initialState};
}
default:
return state;
}
};
export default authReducer;
Ответ №1:
Я ни в коем случае не эксперт по react native, но похоже, что токен просто деструктурируется из action. Примерно то же самое, что:
const dict = {
"alpha": 'a',
"beta": 'b',
}
const {alpha} = dict
console.log(alpha) // you should expect "a" to be printed out
Комментарии:
1. Также: MDN при деструктурировании: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… (Кроме того, вау, это более мощно, чем я думал!)
2. Ах! Я вижу! Таким образом, это в основном захват «токена» из действия отправки :). Спасибо! По сути, это эквивалентно высказыванию «пусть токен = действие. токен «Я считаю