Примечание: в этом вопросе нет кода, потому что я ищу более теоретический ответ.
Я новичок в HOC. Я понимаю, как это кодировать, но не совсем уверен, какую логику поместить, где и когда ее вызывать.
Прямо сейчас я работаю над некоторыми функциями поиска для своего проекта и понял, что могу разделить логику между раскрывающимся списком результатов быстрого поиска и страницей результатов, поскольку они выполняют одинаковый тип поиска.
У меня есть следующие функциональные возможности:
Вопрос в том, должны ли это быть только общие функции в моем HOC, которые можно вызывать из моего обернутого компонента, или функции должны запускаться в HOC до их передачи?
Например, перед поиском должны быть выполнены и проверить репозитории, и подготовить репозитории. Поэтому я думаю, что это можно сделать в HOC, и их результаты будут отправлены как свойства для обернутого компонента.
Однако обрабатывать поиск выполняется, когда пользователь взаимодействует с компонентом, может быть, это должна быть функция, которую может вызывать завернутый компонент?
И построить результаты, в котором я вообще не уверен, поскольку он содержит некоторые функции отображения, хотя и общие, и, возможно, он должен вообще оставаться в обернутом компоненте?
Спасибо за чаевые. Под «обернутым» я подразумеваю компонент, который обернут / улучшен (или как он там называется) HOC.





Я думаю, что
check repositoryиprepare repositoryмогут быть в HOC, и их свойства передаются в обернутый компонент. Что именно завернуто?Handle searchтакже может быть частью HOC или его дочернего элемента, если вы хотите выполнять поиск только после того, какcheckиprepareили дочерний элемент смонтирован. Похоже, вы можете захотеть визуализироватьbuild resultза пределами HOC, поэтому вы можете передать функцию HOC для обновления родителя с созданными результатами.