2015-04-04 40 views
5

我在構建測試應用程序時使用jQuery for ajax,同時學習反應。使用jQuery選擇器呈現reactjs

是否有可能使用jQuery選擇器作爲渲染反應組件的目標?

這是從react tut

React.render(
    <FilterableProductTable products={PRODUCTS} />, 
    document.getElementById('content') 
); 

這並不工作,但我不知道是否有可能:

React.render(
    <FilterableProductTable products={PRODUCTS} />, 
    $('#content') 
); 

感謝, 約翰

+1

也許,從jquery中解開它? $('#content')[0] – 2015-04-04 13:40:52

+1

如果您使用的是現代瀏覽器,請查看'document.querySelector',因爲許多典型的「查找元素」場景可能不需要jQuery。 – WiredPrairie 2015-04-04 14:33:41

+0

@WiredPrairie太棒了!我從來沒有見過這個! – John 2015-04-04 14:51:30

回答

11

這將做詭計

React.render(
    <FilterableProductTable products={PRODUCTS} />, 
    $('#content')[0] 
); 
+0

啊當然,謝謝:) – John 2015-04-04 13:41:55

+1

如果你的#content是一個反應組件,你也可以使用「refs」。 'this.refs.content.getDOMNode()'而不是使用jQuery。組件/元素應該位於同一層或作爲道具傳遞。被調用時應該在'ref:content'處;) – Kursion 2015-04-04 14:37:10