Comment для самого комментария.
В нем есть кнопка "Удалить", если ты автор.
Так вот. Прям в Comment я вызываю dispatch ("deleteComment"). Затем мне нужно обновить и заново получить комментарии.
Где я должен вызвать fetchComments? Прям в Comment или передать коллбэк через эмит и в самой странице вызвать fetchComments?
Привет, думаю в данной случае код будет более очевидным, если сделать через emit. 🤷
Но первый вариант кажется более независимым. Типа компонент сам решает удалять себя или нет)
Я бы на вашем месте сделал, чтобы Comment кидался только событиями. А все dispatch ("deleteComment") и dispatch ("fetchComments") вызывались на странице комментариев. А еще лучше в родительском компоненте например CommentList или просто Comments.
У меня как раз есть родительский компонент CommentBlock
А почему так будет лучше?
Опираясь на личный опыт, могу сказать, что вы потом сами запутаетесь, что и в каком компоненте вызывается.
В дочерний передавать только данные для отображения, а всю логику выполнять в родительском. Так получается?
И еще вопрос - dispatch ("fetchComments") с бека дергает комменты?
Тогда наверное будет лишним вызывать его после удаления или обновления каждого комментария.
Просто у меня так получается: Есть страница самой записи Post. В нём компонент CommentsBlock. А в нем Comment. В Post вызываю fetchPost и fetchComments В CommentsBlock беру комменты из стора и пишу comment in getComments и вывожу Comment в этом цикле
Правильно то, что я беру комменты из стора или нужно прям в CommentsBlock передавать как параметр из Post?
Опять же если делать код более очевидным для себя и для других разрабов (если есть), то в CommentsBlock нужно передать как параметр
Хорошо, понял, спасибо. Буду переделывать Если кто-то ещё это читает, пожалуйста, скажите своё мнение. Является ли это лучшей практикой или нет
Мне тоже интересно, потому что не так давно занимался такой же задачей 👍🏼
Ну вот, выше обсуждение
Пост как я понял это страница, верно?
Обсуждают сегодня