ТёмнаяМатерия: так цель то какая?) найти интересную работу или понравится работодателю? Если первое - то найдется тот, кого заинтересует ваш код пробки на мосту, и он посмотрит - так так, здесь ок, здесь можно было сделать получше (и расскажет, а не просто потролит как в первом ответе). А если второе - то я пас. ;)
badgoto: добрый день, спасибо за замечание. Там дальше по курсу HMR будет работать, но здесь и правда мне стоит упомянуть, о том, что не работает. А конкретно, по вашему вопросу: вы все сделали правильно, с .default... Но, видимо это не работает если мы указываем initialState как default параметр. Попробуйте так:
И у вас все получится. Поздравляю, главное, что вы поняли (указав const nextRootReducer = require('../reducers').default), чего от вас хочет HMR - он ожидает, что ему отдадут функцию. А без deafault - импортиловолось не то что нужно.
На всякий случай, прикладываю ссылки с кодом, при котором если вы измените что-то в initialState - у вас все сразу изменится на странице.
файл configureStore.js: pastebin.com/EKCK8F72
файл reducers/index.js: pastebin.com/SHVLzzCB
Привет =) указана же почта и твиттер в учебнике. По воросу:
1. Оператор "..." это что-то типа "склонируй и измени указанное свойство". Грубо говоря, у вас есть каша {масло: сливочное, варенье: клубничное}, вы пишите: ...каша, варенье: вишневое. На выходе, вы получаете не измененную первую кашу, а НОВУЮ (это важно) кашу, с маслом сливочным, но вареньем вишневым. Как указано в курсе, ... (spread оператор) похоже на Object.assign
2. + превращает строку в число, если это возможно. Например: "12" и 12 разные, не так ли? "12" - это строка, а 12 - это число. +"12" => 12
Добавлять плюсик, это очень распространенное поведение прямиком из основ языка. Почитайте здесь - https://learn.javascript.ru/operators