混合纯反应的组分与嗡接下来
问题描述:
假设我有一些通过图书馆获取纯react.js组件:混合纯反应的组分与嗡接下来
var MyPureJavaScriptComponent = React.createClass({
render: function() {
//...
}
});
但我希望用om.next,其中反应的组分都通过defui
宏观构造:
(defui MyComponent
Object
(render [this]
(div nil "Hello, world!")))
问题:什么是让MyPureJavaScriptComponent
进入om.next
的最佳方式?如果它可以被封装到defui
的自己的调用中,那么MyPureJavaScriptComponent
与其他om.next组件相同,这将是非常好的(至少在美学上)。这是否可能(并且它会是最好的方法)?
答
你可以返回任何阵营组件呈现到您的Om.next树,这里是一个例子:
(defui MyComponent
Object
(render [this]
(dom/div nil
(dom/h1 nil "Hello")
(js/React.createElement js/MyPureJavaScriptComponent #js {:prop "value"}))))
是不是有一个更好的地方来创建它比渲染功能,例如,当它被安装?但这种方式很简单,并且由于React不做任何不必要的实际渲染而得到了帮助。 –
@ChrisMurphy这是推荐的方法,正常的React JSX语法只是将它抽象出来,但是检查源代码,你会在整个地方看到'React.createElement',从React主页检查这个例子(检查Compiled JS标签)https://www.dropbox.com/s/9asp89ebb201el8/Screenshot%202016-02-28%2020.47.07.png?dl=0 –