我在资产中使用Rails with react gem和react-router.js . 我正在使用webpack以使用require
我在app.js里面有我的路线:
var Router = require('react-router').Router;
var Route = require('react-router').Route;
var Link = require('react-router').Link;
var ReactDOM = require('react-dom');
var browserHistory = require('react-router').browserHistory;
ReactDOM.render((
<Router history={browserHistory}>
<Route path="/" component={Welcome}>
<Route path="hello" component={Hello}/>
<Route path="welcome" component={Welcome}/>
<Route path="about" component={About}/>
<Route path="*" component={NoMatch}/>
</Route>
</Router>
), document.getElementById('root'));
other.es6.jsx:
var Hello = React.createClass({
render: function () {
return (
<div>
<h3>Hello component</h3>
<a href="#about">About</a>
</div>
);
}
});
var Welcome = React.createClass({
render: function () {
return (
<div>
<h3>Welcome component</h3>
<a href="#hello">Hello</a>
</div>
);
}
});
var About = React.createClass({
render: function () {
return (
<div>
<h3>About component</h3>
<a href="#welcome">Welcome</a>
</div>
);
}
});
var NoMatch = React.createClass({
render: function () {
return (
<h3>No Match</h3>
);
}
});
当我访问controller_name / index时,它默认呈现带有 '#hello' 链接的 'Welcome component' 文本,但是当单击时,它不会执行任何操作 . 它还在说 'welcome component'
我做错了什么?
1 回答
您只渲染欢迎内容而不是任何子组件 . 我希望这会解决它 .