react-router-component 将所有 URL 路由到同一个组件
react-router-component Routes All URLs to same component
我正在尝试使用 react-router-component 向我的简单 blogging/short 故事应用程序添加路由,但无论输入什么 url,它都显示相同的组件。 url 出现了,但它始终呈现相同的组件,即使我指定了不同的处理程序,所以 "localhost:3000/" 和 "localhost:3000/category" 都显示相同的组件,即使我为“/类别”。该文件如下所示:
'use strict';
var React = require('react');
var Router = require('react-router-component');
var Locations = Router.Locations;
var Location = Router.Location;
var MainPage = require('./components/views/main-page.jsx');
var CategoryPage = require('./components/views/category-page.jsx');
var App = React.createClass({
render: function () {
return (
<Locations>
<Location path="/" handler={MainPage} />
<Location path="/category" handler={CategoryPage} />
</Locations>
)
}
})
React.render(<App />, document.body)
您可以在我的网站上查看完整项目 github https://github.com/mrbgit/short-stories/tree/branch 如果您需要更多信息,请告诉我。谢谢!
看看另一个 post 的回答,它会让您了解它是如何工作的:
您需要使用 <Route handler.../> and <RouteHandler />
。如果您从提问者那里获取代码并使用我的调整,您将更好地了解它是如何工作的。
我使用的是 react-router-component,而不是 react-router,但我找到了答案。我需要将 "hash" 添加到位置。所以它是这样工作的:
'use strict';
var React = require('react');
var Router = require('react-router-component');
var Locations = Router.Locations;
var Location = Router.Location;
var MainPage = require('./components/views/main-page.jsx');
var CategoryPage = require('./components/views/category-page.jsx');
var App = React.createClass({
render: function () {
return (
<Locations hash>
<Location path="/" handler={MainPage} />
<Location path="/category" handler={CategoryPage} />
</Locations>
)
}
})
React.render(<App />, document.body)
感谢大家的帮助!
我正在尝试使用 react-router-component 向我的简单 blogging/short 故事应用程序添加路由,但无论输入什么 url,它都显示相同的组件。 url 出现了,但它始终呈现相同的组件,即使我指定了不同的处理程序,所以 "localhost:3000/" 和 "localhost:3000/category" 都显示相同的组件,即使我为“/类别”。该文件如下所示:
'use strict';
var React = require('react');
var Router = require('react-router-component');
var Locations = Router.Locations;
var Location = Router.Location;
var MainPage = require('./components/views/main-page.jsx');
var CategoryPage = require('./components/views/category-page.jsx');
var App = React.createClass({
render: function () {
return (
<Locations>
<Location path="/" handler={MainPage} />
<Location path="/category" handler={CategoryPage} />
</Locations>
)
}
})
React.render(<App />, document.body)
您可以在我的网站上查看完整项目 github https://github.com/mrbgit/short-stories/tree/branch 如果您需要更多信息,请告诉我。谢谢!
看看另一个 post 的回答,它会让您了解它是如何工作的:
您需要使用 <Route handler.../> and <RouteHandler />
。如果您从提问者那里获取代码并使用我的调整,您将更好地了解它是如何工作的。
我使用的是 react-router-component,而不是 react-router,但我找到了答案。我需要将 "hash" 添加到位置。所以它是这样工作的:
'use strict';
var React = require('react');
var Router = require('react-router-component');
var Locations = Router.Locations;
var Location = Router.Location;
var MainPage = require('./components/views/main-page.jsx');
var CategoryPage = require('./components/views/category-page.jsx');
var App = React.createClass({
render: function () {
return (
<Locations hash>
<Location path="/" handler={MainPage} />
<Location path="/category" handler={CategoryPage} />
</Locations>
)
}
})
React.render(<App />, document.body)
感谢大家的帮助!