我创建了一个React组件库,JS反应页面视图的呈现和控制。
// Application js, controls the routes.
var Application = React.createClass({
mixins: [Router],
routes: {
'/': HomePage,
'/users': PerformerPage
// , null: NotFoundPage
},
render: function () {
return this.transferPropsTo(this.renderRouteHandler());
}
});
// and in HomeView.js, a link to a page
<Link href={'/users'}>{'Test'}</Link>
这一切都很有效。除非我手动导航到该链接时,它显然还没有处理它...所以我的问题是,如果服务器重定向到索引ALWAYS,会反应赶上吗?我非常精通咕噜声,并且通常构建自动化,但遗憾的是,节点js服务器并不是我的强项。
在我的grunt服务器
task =>
'connect:livereload',
'webpack:development',
'open',
'watch'
最终结果:用户应将地址粘贴到栏中(即site.com/users)并导航到应用程序/用户。
谢谢:D任何帮助都会很棒。
答案 0 :(得分:1)
一种方法是将路由放在自己的文件中(比如client / routes.js)
module.exports = {
'/': HomePage,
'/users': PerformerPage
// , null: NotFoundPage
};
现在,您可以在应用程序文件和节点服务器中要求它们:
var app = require('express')();
var routes = Object.keys(require('../client/routes'));
routes.forEach(function(route){
app.get(route, function(req, res){
res.sendFile(__dirname + '/static/index.html');
});
});