将Pure React组件与Om混合使用Next

时间:2016-02-27 21:57:09

标签: clojure reactjs clojurescript om

假设我可以通过某个库访问纯的react.js组件:

var MyPureJavaScriptComponent = React.createClass({
  render: function() {
    //...
  }
});

但我希望使用om.next,其中React组件是通过defui宏构建的:

(defui MyComponent
  Object
  (render [this]
          (div nil "Hello, world!")))

问题MyPureJavaScriptComponent进入om.next的最佳方式是什么?如果它可以包含在它自己对defui的调用中,那么它将非常好(至少在美学上),这样MyPureJavaScriptComponent与其他所有om.next组件处于同一个基础上。这是否可能(并且这是最好的方式)?

1 个答案:

答案 0 :(得分:6)

您可以将任何React组件返回到Om.next树中,这是一个例子:

(defui MyComponent
  Object
  (render [this]
    (dom/div nil
      (dom/h1 nil "Hello")
      (js/React.createElement js/MyPureJavaScriptComponent #js {:prop "value"}))))