В чем разница между build, buildU и buildSpec в Scalajs-реагировать?

Может кто-нибудь, пожалуйста, объясните разницу между функциями build, buildU а также buildSpec для компонентов React в scalajs-реагировать и когда использовать один поверх другого?

2 ответа

Решение

С https://github.com/japgolly/scalajs-react/blob/master/doc/USAGE.md

Вызов build (или же buildU) и когда он скомпилируется, у вас будет компонент React. […] Если ваш тип реквизита Unitиспользовать buildU вместо этого, чтобы иметь возможность создать экземпляр вашего компонента с необходимостью передать () в качестве аргумента конструктора.

Что касается buildSpecвы можете следить за типами, если вам интересно, но это не упоминается, потому что, как говорит @nafg выше, это низкоуровневый метод, который не имеет значения, если вы уже не знаете, что такое "спецификация" в мире React, и вы Вы делаете что-то сложное с этим. Что такое спецификация React, вы можете проверить код и / или прочитать о нем в документации по React. В противном случае, если вы просто хотите создать компоненты Scala React, вам нужно только следовать инструкциям и примерам и использовать build{,U},

Не уверен на 100%, но, похоже,

  • build создает функцию компонента scala, которая принимает экземпляр вашего типа реквизита в качестве параметра
  • buildU для того, когда ваш тип реквизита Unit (это то, что означает U), т. е. вам не нужен объект props, поэтому вы можете использовать компонент без предоставления объекта props.
  • buildSpec Я не совсем уверен, но он возвращает экземпляр ReactComponentSpec который имеет js.native аннотации, поэтому я подозреваю, что это как-то дает низкоуровневый доступ к объекту React.
Другие вопросы по тегам