Redux-React передает объект с помощью метода mapDispatchToProps - PullRequest
0 голосов
/ 27 февраля 2019

Я передаю объект с помощью метода mapDispatchToProps в строках 214 и 249. Код, выполняемый на 214, кажется нормальным, но когда я делаю то же самое на 249, он выдает мне следующую ошибку:

Объекты недопустимы как дочерние элементы React (найдено: объект с ключами {type, sound}).

Я не совсем понимаю эту ошибку, так как я новичок в редукции и реакции.Может ли кто-нибудь помочь мне решить эту проблему с помощью избыточного состояния и, возможно, объяснить мне, почему это неправильно.Большое спасибо.

Вот ссылка на код:

//link to codepen
https://codepen.io/roger1891/pen/LaYYaN

1 Ответ

0 голосов
/ 27 февраля 2019

Вы возвращаете this.props.addSound(), который возвращает объект action creator с единственным аргументом sound в качестве данных.В этом случае единственный аргумент, который вы передаете, это mySoundList.localSoundList.map().Возможно, вам просто нужно удалить эту функцию ...

return mySoundList.localSoundList.map((item) => {
      return (<div class="col-sm-4">
          <div id={item.btnId} class="btn btn-primary btn-sm drum-pad" onClick={this.clickButton} value={item.audioId}>
            {item.audioId}
            <audio id={item.audioId} class="clip" src={item.source} type={item.type}></audio>
          </div>
        </div>);                        
    });

Если только вы не пытаетесь сделать что-то асинхронно с обновленным состоянием притока из действия ADD_Sound?

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