Здравствуйте, у меня есть приложение React Redux, созданное и извлеченное из приложения Create React. Я хотел бы сделать это приложение дважды на одной веб-странице. Наша главная веб-страница не использует React, но эти определенные c части будут. Я построил приложение, и оно прекрасно отрисовывается, когда рендерит его только один раз, но когда я отрисовываю его дважды на двух отдельных узлах DOM, значения, которые я изменяю во втором приложении, обновляются в первом. Похоже, что они разделяют состояние между двумя приложениями.
По моим исследованиям, это вполне достижимая цель. Я читал, что это может быть вызвано также сборкой веб-пакета, хотя я хотел бы избежать включения нескольких одинаковых сценариев на страницу только для создания уникальной сборки ( см. Эту ссылку ). Я ищу помощь в рендеринге двух уникальных экземпляров моего приложения. Код ниже root моего приложения:
const one = document.querySelector('[data-dfa=local]');
const two = document.querySelector('[data-dfa=local2]');
const store = createStore(
reducer,
initialState,
window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
);
ReactDOM.render(
<Provider store={store}>
<FieldAppointment appId='one' />
</Provider>, one);
ReactDOM.render(
<Provider store={store}>
<FieldAppointment appId='two' />
</Provider>, two);