А разве у автора проверка shallowCompare не даст результата: "да, изменилось"? Ведь в редьюсере мы всегда возвращаем новый объект, а это значит, что для List ссылка изменилась... Или я не так понял?
Тестировать, что кнопка кликабельна - по желанию. Здесь как-то мир раскололся =) Сам Дэн [который redux сделал] спрашивал - тестируете ли вы компоненты? (в твиттере)
"пропускать так же фабрики экшенов" - это имеется ввиду не тестировать экшены, а тестировать только reducer (вы это понимаете под "изменения в store?")? Здесь не согласен. Тестировать и экшены и редьюсеры - хорошая идея.
как вы храните данные - это другой вопрос, конечно... Но, можете сделать как советуют в еще одном ответе: хранить строку поиска и результаты для нее (заодно можно и мемоизацию (выборку данных из кэша, так как у вас уже будет результат для текущей поисковой строки) использовать).
Mikhail Osher: субъективно же.. В свое время она мне очень понравилась, есть и тесты и интересный пример. Не согласен с immutable, так как до сих пор не пришел к его полезности, но в целом... что еще там не понравилось? я читал ее очень давно и был ей крайне рад, так как там даже задачки были.
У вас инпуты - дочерний компонент? Есть родитель же, который в props имеет title,number и тд? Получается, что он и id имеет. Создайте в нем функцию save, и на изменениях инпута, если вы хотите делать это постоянно и мгновенно (а я думаю, что вряд ли вы хотите постоянно на каждый чих отправлять запрос на сервер) вызывайте this.props.save( ). Поэтому я и спрашиваю, как у вас устроен компонент? Вы привели только кусочек с инпутами, после изменения текста в них - вы изменяете стейт. Ок. А дальше что? Есть кнопка - "отправить данные на сервер"? или как?
очень много текста.. но информации полезной не очень много. Советую подумать, как сделать иначе формирование элементов. А так же, посмотрите на withRouter (что поможет вам использовать информацию из роутера) - видео-урок тут - https://egghead.io/lessons/javascript-redux-using-...
crows: да что за бред =) вам уже все объяснили: у вас есть публичный ключ, который вы должны отдавать админам, который они должны добавлять в проекты, в которые вы должны получать доступ. И все. Нет смысла в сгенерированном публичном ключе без соответсвующего ему приватного.
crows: вас просто должны добавить в том репозитории. То есть, вы должны им дать свой ПУБЛИЧНЫЙ ключ, а "они" должны добавить его в список разрешенных. Только не отдавайте приватный (вообще никуда).