Могу ли я хранить компонент в редуксе? - PullRequest
0 голосов
/ 19 июня 2019

Я хочу только один раз импортировать компонент 'MessageDialog' в index.js и использовать его на других страницах.Поэтому я храню компонент в редуксе.Но я получаю ошибку при входе на страницу.Я этого не делал.Могу ли я сохранить компонент в редуксе?

index.js:

import { MessageDialog } from 'miot/ui';
...
let data = {
    MessageDialog: <MessageDialog />,
    messageDialogOptions: {
        title: '我是标题',
        message: '我是内容',
        cancel: '取消',
        confirm: '确认',
        cancelable: false,
        visible: true
    }
};

let store = createStore(reducers, data);

export default class App extends React.Component {
    render() {
        return (
            <Provider store={store}>
                <RootStack />
            </Provider>
        );
    }

}

Инвариантное нарушение: недопустимый тип элемента: ожидается строка (для встроенных компонентов) или класс /функция (для составных компонентов), но получил: object.

Я надеюсь успешно отобразить страницу.

1 Ответ

1 голос
/ 19 июня 2019

Redux не предназначен для хранения компонентов. Вы должны хранить только реквизиты для ваших компонентов.

Заставьте ваш компонент реагировать на данные, которые вы храните в Redx, вместо того, чтобы пытаться сохранить сам компонент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...