Реагент генерирует компонент React, который передает React.isValidClass (компонент)?

Я пытаюсь использовать реактивный маршрутизатор в своем проекте реагента Clojurescript. Проблема в том, что react-router требует, чтобы компоненты передавали React.isValidClass(component), что в React 0.11.2 определяется как:

ReactDescriptor.isValidFactory = function(factory) {
  return typeof factory === 'function' &&
         factory.prototype instanceof ReactDescriptor;
};

Реагент, кажется, генерирует компоненты как объект, а не как функцию. Вот мой код:

(defn home []
  [:div [:h1 "Home Page placeholder"]])

(reagent/as-component (home)) ; => #<[object Object]>

Кто-нибудь разобрался, как заставить работать такое взаимодействие?


person erikcw    schedule 06.11.2014    source источник
comment
я нашел попытку сделать то же самое на github: github.com/ghedamat/react-react-router, может быть, это поможет.   -  person zarkone    schedule 29.07.2015


Ответы (1)


Для этого react-react-router используется reagent.core/reactify-component. reactify-component существует, чтобы сделать компоненты Reagent действительными компонентами React для таких сценариев взаимодействия.

person nilern    schedule 06.09.2015