Я пытаюсь передать некоторую подпорку компоненту без состояния для моих условных потребностей рендеринга.При назначении значения состояния избыточности моей переменной в connect()
, например var: state.reducer.var
, я не получаю объект «state.reducer.var».Вместо этого я получаю весь объект состояния.
Когда console.log(state.reducer.var)
в connect () в качестве обратного вызова, я получаю ожидаемый результат - значение var.То есть, когда console.log(var)
в качестве обратного вызова, передавая ему только что назначенную переменную, я получаю объект, который получаю, когда console.log(state)
.
В моем дочернем компоненте я получаю undefined
, используя мою переменную какprops.var
const _ProtectedRoute = ({ component: Component, ...rest }, props) => {
return (
<Fragment>
{!props.isAuthed
? <Redirect to="auth" noThrow />
: <Component {...rest} />
}
</Fragment>
);
}
const ProtectedRoute = connect(
(state) => ({
isAuthed: state.user.isAuthed,
}, (isAuthed) => {console.log('state value: ', isAuthed)})
)(_ProtectedRoute);
Я ожидаю, что моя переменная, которой я назначил избыточное состояние, будет передана моему компоненту _ProtectedRoute
без сохранения состояния в качестве реквизита, чтобы я мог использовать его в условном выражении.