pha*_*ryx 5 javascript ruby ruby-on-rails reactjs
(注意:我正在使用'therubyracer','react-rails'和'sprockets-coffee-react'宝石)
这是我的简单组件(Hello.js.cjsx)的代码:
# @cjsx React.DOM
Hello = React.createClass(
render: ->
<div>
Hello {@props.name || "World"}!
</div>
)
window.components ?= {}
window.components.Hello = Hello
Run Code Online (Sandbox Code Playgroud)
在我的rails视图(index.html.erb)中,这很好用:
<%= render_component('components.Hello', {name: 'Jack'}) %>
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试这个:
<%= react_component('components.Hello', {name: 'Jill'}, {prerender: true}) %>
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Encountered error "ReferenceError: components is not defined"
这看起来很奇怪,因为我在我的组件中定义它.
我究竟做错了什么?
我不确定你使用的语法。请更换以下行:
window.components ?= {}
window.components.Hello = Hello
Run Code Online (Sandbox Code Playgroud)
和
window.Hello = Hello
Run Code Online (Sandbox Code Playgroud)
(您可以点击此链接获取更多示例)。
| 归档时间: |
|
| 查看次数: |
1281 次 |
| 最近记录: |