withStuff(Component) он теряет весь смысл разделения компонентов на презентейшнл и контейнеры
                  
                  
                  
                  
                  
                  Теперь навсегда Component привязан к определённой логике / конфигурации (смотря что хок делает). Иногда это оправдано. Чаще — нет.  Но так или иначе мы потеряли возмножность "предоставить" функционал там, где он внезапно понадобился
                  
                  
                  
                  
                  
                  представим, что мой мегаполезный hoc withStuff() действительно делает че-то полезное, что может пригодиться очень часто.
                  
                  
                  
                  
                  
                  Пишу-пишу я лейаут типа <div><h1>stuff info</h1></div> и вдруг понимаю, что в заголовке мне было бы так здорово иметь те данные, которые даёт withStuff. Что делать? Создавать новый файл с компонентом, оборачивать его в withStuff, импортить, вставлять в h1
                  
                  
                  
                  
                  
                  А имея умный компонент, который представляет данные через render prop, у нас получится живая композиция:
                  
                  
                  
                  
                  
                  <div>
                  
                  
                    <h1>
                  
                  
                      stuff info:
                  
                  
                      <WithStuff render={data => <span>{data.info}</span>} />
                  
                  
                    </h1>
                  
                  
                  </div>
                  
                  
                  
                  
                  
                  это мегаудобно
                  
                  
                
Понял. Тогда в своей """идеальной""" библиотеке для форм запилю такую возможность.
Обсуждают сегодня