Javascript 使用React Rails预渲染React组件
我有一个简单的React组件,目前正在客户端上正确渲染。我正在尝试在服务器上渲染它。为了测试这一点,我关闭了Chrome中的JavaScript并加载页面 我的组件如下所示:Javascript 使用React Rails预渲染React组件,javascript,ruby-on-rails,ruby-on-rails-4,reactjs,isomorphic-javascript,Javascript,Ruby On Rails,Ruby On Rails 4,Reactjs,Isomorphic Javascript,我有一个简单的React组件,目前正在客户端上正确渲染。我正在尝试在服务器上渲染它。为了测试这一点,我关闭了Chrome中的JavaScript并加载页面 我的组件如下所示: window.TestComponent = React.createClass({ render: function() { return React.DOM.h1({className: 'TestComponent'}, 'Test Component') } }); <%
window.TestComponent = React.createClass({
render: function() {
return React.DOM.h1({className: 'TestComponent'},
'Test Component')
}
});
<%= react_component 'TestComponent', {prerender: true} %>
入口点如下所示:
window.TestComponent = React.createClass({
render: function() {
return React.DOM.h1({className: 'TestComponent'},
'Test Component')
}
});
<%= react_component 'TestComponent', {prerender: true} %>
要求2
您的组件必须在全局范围内可访问。如果你是
使用.js.jsx.coffee文件,则需要使用包装器函数
考虑到:
我使用的是纯JavaScript
要求3
您的代码无法引用文档。预渲染进程没有
对文档的访问,因此jQuery和其他一些LIB在这种情况下不起作用
环境:(
我没有参考文献
我可能做错了什么?试试这个:
<%= react_component 'TestComponent', {}, {prerender: true} %>
第一个散列是空的-它是react组件的空
第二个散列是react rails的选项,在这里您可以说“prerender:true”。试试这个:
<%= react_component 'TestComponent', {}, {prerender: true} %>
第一个散列是空的-它是react组件的空
第二个散列是react rails的选项,在这里您可以说“prerender:true”