【问题标题】:Reactjs-rails troubles with pre-renderingReactjs-rails 预渲染问题
【发布时间】:2015-06-19 00:40:39
【问题描述】:

我使用react-rails gem 并遇到了具体问题:预渲染不起作用。我已经编写了代码,但是向我发送了一个异常:

Encountered error "ReferenceError: Terminal is not defined" when prerendering Terminal with {}

这是我的代码的来源:

#= require jquery
#= require jquery_ujs
#= require turbolinks
#= require react
#= require react_ujs
#= require components
#= require_tree .

components.js.coffee

#= require_tree ./components

terminal.js.jsx.coffee

Terminal = React.createClass
  render: ->
    `<div>fffs</div>`

还有观点:

= react_component 'Terminal', {}, prerender: true

我正在使用默认的 react-rails 设置,不知道出了什么问题(我不明白为什么 react 找不到 Terminal 组件)。

【问题讨论】:

    标签: ruby-on-rails ruby coffeescript reactjs react-rails


    【解决方案1】:

    您使用prerender: true 进行服务器渲染,因此您需要确保您的组件可全局访问

    @Terminal = React.createClass
      render: ->
        `<div>fffs</div>`
    

    react-rails documentation 上了解更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-02
      • 1970-01-01
      相关资源
      最近更新 更多