Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Homework 5 #44

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open

Homework 5 #44

wants to merge 3 commits into from

Conversation

galusha
Copy link

@galusha galusha commented Oct 31, 2018

Методом проб и ошибок изменила метод push на concat здесь
737a875#diff-ec45b2bdc3a36b9fecf1ef62fdc9c277R40

но! Я так и не поняла почему push не работал, не возвращал новый массив, а возвращал length свежесозданного массива и из-за этого ломалось добавление нового комментария (хотя на уроке ведь работал у тебя! Комментарии добавлялись как миленькие. Я не понимаю что изменилось), а с concat всё заработало.
Притом даже не работало с конструкцией вроде этой
737a875#diff-ec45b2bdc3a36b9fecf1ef62fdc9c277L41

Ещё более меня сбивает с толку, что документация immutable обещает что эти два метода будут возвращать новый массив.
Голова сломана.

Что происходит???!!!1111

@@ -35,7 +37,7 @@ export default (state = new ReducerRecord(), action) => {
case ADD_COMMENT:
return state.updateIn(
['entities', payload.articleId, 'comments'],
(comments) => comments.push(randomId)
(comments) => comments.concat(randomId)
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ты все правильно сделала. .push раньше работал, поскольку это был Immutable List, сейчас это простой массив, на нем push - мутабельная операция, еще и возвращает не то, что нужно

)

case LOAD_COMMENTS + START:
return state.set('loading', true)
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

здесь не достаточно повесить loading на весь comments, ведь ты для конкрентной статьи загружаешь

return state
.set(
'entities',
state.get('entities').merge(arrToMap(response, CommentRecord))
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

.mergeIn

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants