React未定义
我刚刚开始玩反应gem,但我似乎遇到了问题。 使用下面的代码,每当我被路由到我的反应示例页面时,我注意到在浏览器开发者控制台中,它会说“React未定义”。 它指的是这一行:
var react_example = React.createClass({
它位于react_example.js.jsx文件中(见下文)。
的Gemfile
#... as well as other gems... gem 'nokogiri' gem 'react-rails' # 'git://github.com/seyhunak/twitter-bootstrap-rails.git'
development.rb
config.react.variant = :development config.react.addons = true
application.html.erb
React example true %> true %>
react_example.js.jsx
/** @jsx React.DOM */ var react_example = React.createClass({ render: function () { return ( React
); } });
这实际上并不是最好的方法,除非你真的想加载应用程序之外的反应。
文档清楚地说明您应该在application.js清单文件中执行此操作:
//= require react //= require react_ujs //= require components
提及“组件”的行取决于实际放置反应组件文件的文件夹。
尝试切换你的JS包括:
<%= javascript_include_tag "react" %> <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
由于您在应用程序JS中使用React,因此需要先定义它。