Настройка магазина с помощью simpleWebRTC

Я пытаюсь интегрировать simpreWebRTC в свой проект React-Redux, но в библиотеке есть собственное хранилище избыточности, и в документации говорится следующее:

«Предоставленная функция createStore делает базовый магазин Redux полезным для начала работы. Если вы хотите создать свой собственный, импортируйте reducer из '@andyet/simplewebrtc' и обязательно назначьте его simplewebrtc на верхнем уровне вашего объекта состояния. "

Я пробовал несколько подходов, но ничего не работает, есть идеи? что мне здесь не хватает? Спасибо

Это код, который у меня есть до сих пор:

store.js

import {createStore, applyMiddleware} from 'redux'
import rootReducer from './reducers/index'
import thunk from 'redux-thunk';

export default createStore(rootReducer, applyMiddleware(thunk));

const store = createStore(rootReducer);
console.log(store.getState());

./редукторы/index.js

import {combineReducers} from 'redux'
import {reducer as simplewertc} from '@andyet/simplewebrtc'
import liveRoomReducer from './liveRoomReducer'


export default combineReducers({simplewertc, liveRoomReducer});

./редукторы/liveRoomReducer.js

const initialState = {    
    test : 'test' 
};

export default function liveRoomReducer(state=initialState, action) {    
    return state;
};

Я регистрирую состояние магазина в консоли и показываю на нем simplewebrtc:

введите здесь описание изображения

И все еще показывает эту ошибку:

введите здесь описание изображения


person Carlos Trujillo    schedule 25.12.2018    source источник


Ответы (1)


Создание собственного магазина с промежуточным программным обеспечением thunk и использование combineReducers должно помочь:

import {combineReducers} from 'redux';
import {reducer as simplewebrtc} from '@andyet/simplewebrtc';
import reducer1 from 'path/to/your/reducer1';
import reducer2 from 'path/to/your/reducer2';

export default combineReducers({simplewebrtc, reducer1 , reducer2});

Если это не работает для вас, укажите, какая ошибка появляется, если таковая имеется, и какой-нибудь пример кода того, как вы создаете свой редукционный магазин и корневой редуктор.

Редактировать: Увидев обновленный вопрос с кодом, мы обнаружили, что проблема заключалась в опечатке при импорте редуктора.

person Martin Kadlec    schedule 25.12.2018
comment
Уже попробовал помощник combReducer, но по-прежнему показывает эту ошибку: Uncaught TypeError: невозможно прочитать свойство «api» неопределенного в функции getConnectionState (state) { return state.simplewebrtc.api.connectionState; } - person Carlos Trujillo; 26.12.2018
comment
Да, похоже, ключ simplewebrtc отсутствует в состоянии. Если вы получаете состояние, ключ полностью отсутствует или его значение похоже на undefined/null? Также я бы попробовал зарегистрировать значение редуктора simplewebrtc, если он правильно импортирован. - person Martin Kadlec; 26.12.2018
comment
Я обновил сообщение с некоторым кодом и фотографиями, возможно, проблема стала более ясной. Спасибо за помощь кстати. - person Carlos Trujillo; 26.12.2018
comment
у вас там simplewertc вместо simplewebrtc :) - person Martin Kadlec; 26.12.2018
comment
Ты должно быть шутишь !!!!!! ха-ха, теперь все работает, спасибо, ребята, сводя меня с ума из-за этой чертовой опечатки, лол. Спасибо еще раз :) . - person Carlos Trujillo; 26.12.2018