ReactJS Это нормально, когда я использую Redux, все мои компоненты являются компонентом класса - PullRequest
0 голосов
/ 14 июня 2019

Когда я учился реагировать, мой инструктор всегда напоминал мне, что я должен использовать функциональный компонент как можно больше, стараться избегать использования компонента класса, экономно использовать компонент класса. Да, тогда было легко.

Теперь я использую Redux, и я едва могу использовать функциональный компонент, потому что connect(), импортированный из Reaction-redux, будет работать только с компонентом класса, в результате каждый компонент моего приложения является компонентом класса. Это нормально? С тех пор популярность API хуков (использующего функциональный компонент) растет.

1 Ответ

1 голос
/ 14 июня 2019

Ну, 2 вещи:

Во-первых, это возможно connect функциональный компонент .

Во-вторых, вы не должныне подключать каждый компонент к Redux.На самом деле, чем меньше компонентов подключено к Redux, тем лучше.В идеале для набора компонентов у вас есть «контейнерный» компонент, который подключен к хранилищу (и который содержит все остальные соответствующие состояния и логику внутри него), а затем передает этот материал дочерним компонентам функционального / класса (которые больше ориентированы на презентацию).Тогда вы можете иметь несколько таких контейнеров в приложении, а остальные компоненты будут просто традиционными React.

Если вы подключите все напрямую к хранилищу, это может привести к таким проблемам, как снижение повторного использования компонентов,низкая производительность или плохая компоновка / иерархия компонентов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...