Не могу понять, что здесь происходит, но в основном у меня есть файл json, в котором есть множество продуктов. я пытаюсь затем сделать те, которые я хочу
вот мой редуктор:
export default(state = initialState, action) => {
switch(action.type){
case Types.SHOW_PRODUCTS: {
console.log('here1');
let productsToShow = data.filter(category => category.link === action.category)
const newState = [].concat(productsToShow[0].products)
return newState;
}
default:
console.log('here2');
return state;
}
}
когда я регистрирую состояние в своем магазине, оно говорит, что productsToRender - это массив длины 5 (это правильно)
однако, когда я регистрирую (this.props) в одном из своих компонентов, он говорит, что длина равна 0
в приведенном выше редюсере console.log('here 1') является последним вызываемым консольным журналом, что означает, что он определенно возвращает продукты (что проверяется в состоянии хранилища). так что я не уверен, почему он стирает его в этом компоненте?
в этом компоненте я называю это
componentWillMount = () => {
this.props.showProducts(this.props.chosenCategory.category)
}
который проходит в выбранной категории, так что теперь я знаю, какие продукты отображать
однако регистрация this.props в методе рендеринга ниже показывает, что это пустой массив
конечно, я могу опубликовать больше кода, если это необходимо, но есть ли причина такого странного поведения?
дополнительная информация:
интересно, когда я делаю это:
default:
console.log('here2');
return [{name: 'prod'}];
}
а затем зарегистрируйте this.props, теперь он содержит этот массив с этим объектом???
connect
перенесли свой родительский компонент в Redux Store? - person t3__rry   schedule 20.06.2018componentDidMount
вместо этого? - person Winter   schedule 20.06.2018<h1> Hi </h1>
, и это не отобразится??? - person Mr React   schedule 20.06.2018