我发现的大多数ReactJs指南都是基于ES5的。因此,我已经开始以这种方式使用ReactJS。现在我知道了如何创建所有的components,现在是创建一个小single-page-application的时候了。我的麻烦在于理解如何在不重新加载页面的情况下route我的views。我已经找到了react-router (https://github.com/rackt/react-router),这似乎是我的目标所需要的,但是所有的例子都是用ES6编写的,目前我还不清楚。当然,我会在ES6中重构我的应用程序,但我更愿意遵循我已经开始的方式。
有谁能帮我“翻译”反应-路由器到ES5,让我弄清楚这一点吗?
发布于 2015-11-03 11:13:34
下面是反应路线教程中的一个例子。
render((
<Router>
<Route path="/" component={App}>
<Route path="about" component={About} />
<Route path="inbox" component={Inbox}>
<Route path="messages/:id" component={Message} />
</Route>
</Route>
</Router>
), document.body)components应用程序,关于,收件箱,消息是用ES6语法创建的,但没关系,也可以使用babel将您的ES6语法转换为ES5,这样您就可以轻松地传递您的ES5组件。
另外,这两行代码:
import { render } from 'react-dom'
import { Router, Route, Link } from 'react-router'指:
var render = require('react-dom').render;
var Router = require('react-router').Router;
var Route = require('react-router').Route;
var Link = require('react-router').Link我希望它能帮到你。
谢谢
发布于 2017-05-26 17:42:48
前面的回答忘了提到BrowserHistory,它是ReactRouter的一个重要部分。您可以提高这里的级别。
var React = require("react");
var ReactDOM = require("react-dom");
var SchoolsList = require("./components/SchoolsList.jsx");
var Router = require('react-router').Router;
var Route = require('react-router').Route;
var Link = require('react-router').Link
var browserHistory = Router.browserHistory;
var _question = schoolsStore.getQuestion();
function render(){
//console.log(_question);
ReactDOM.render(
<Router history={browserHistory}>
<Route path="/" component={SchoolsList} question={_question.question} activeIndex={_question.activeIndex} />
</Router>,
document.getElementById("container"));
}
render();https://stackoverflow.com/questions/33497483
复制相似问题