私はこの素晴らしいチュートリアルに従っています: setup-up-react-in-ruby-on-rails-part-1
次のエラーが表示されます: エラー: xxx からモジュール xxx が見つかりません
test-component.es6.js
React = require('react/addons');
let TestTwo = require('./components/test-two.es6.js');
let TestComponent = React.createClass({
render() {
return (
<div>
<h1>{this.props.title}</h1>
<TestTwo />
</div>
);
}
});
module.exports = TestComponent;
component.js
//= require_tree ./components
// You'll probably want this if your using babel
require("babelify/polyfill");
var app = window.app = global.app = {};
//React bootstrap modules
var TestComponent = require('./components/test-component.es6.js');
app.TestComponent = TestComponent;
このようにセットアップすると動作しますが、TestTwo コンポーネントはプリレンダリングされません (私は prerender:true を使用します)
重要な編集
このセットアップコンテンツでのサーバー編集後、事前にレンダリングされますが、ブラウザでデータが変更されるたびにサーバーを再起動する必要がありますが、ソースビューを開くと古いデータは新しくありません!?.
test-component.es6.js
React = require('react/addons');
let TestComponent = React.createClass({
render() {
return (
<div>
<h1>{this.props.title}</h1>
<app.TestTwo />
</div>
);
}
});
module.exports = TestComponent;
component.js
//= require_tree ./components
// You'll probably want this if your using babel
require("babelify/polyfill");
var app = window.app = global.app = {};
//React bootstrap modules
var TestTwo = require('./components/test-two.es6.js');
app.TestTwo = TestTwo;
var TestComponent = require('./components/test-component.es6.js');
app.TestComponent = TestComponent;
TestTwo コンポーネントは単にテキストを返すだけです。
text.html.erbは両方のセットアップで同じです
<%= react_component 'app.TestComponent', {title:"Hello, Back"}, {prerender:true} %>
Win7 64 ビット OS