我正在尝试在我的Clojurescript Reagent项目中使用react-router。问题是,react-router要求组件通过React.isValidClass(component)
,在React 0.11.2中定义为:
ReactDescriptor.isValidFactory = function(factory) {
return typeof factory === 'function' &&
factory.prototype instanceof ReactDescriptor;
};
Reagent似乎将组件生成为对象而不是函数。这是我的代码:
(defn home []
[:div [:h1 "Home Page placeholder"]])
(reagent/as-component (home)) ; => #<[object Object]>
有没有人研究过如何进行这种互操作?
答案 0 :(得分:1)
reagent-react-router使用reagent.core/reactify-component
做的工作是什么。存在reactify-component
以使Reagent组件有效React组件用于这些类型的操作间方案。