如何在进入视图之前识别 react-router Handler is NotFound?
How to identify react-router Handler is NotFound right before it goes to the view?
我正在做一个小样板项目,使用 node 和 express 使用 ReactJS 进行服务器端渲染。
我想知道如何识别回调中的 Handler
变量何时表示 NotFound
工厂,以便我可以抛出 404 错误 表示。类似于:res.status(404)
router.run(function(Handler) {
// HOW TO KNOW `Handler` corresponds to `NotFound`?
// I WANT TO USE SOMETHING LIKE `res.status(404)` HERE...
// Render React to a string, passing in our fetched tweets
var markup = React.renderToString(
Handler(state)
);
// Render our 'home' template
res.render('index', {
markup: markup, // Pass rendered react markup
state: JSON.stringify(state) // Pass current state to client side
});
});
如果您想完整查看文件,请随时访问 github 上的页面:
https://github.com/sergiocruz/react-boilerplate/blob/master/server.js
如果您对此感到好奇,也可以在这里随意浏览整个项目:https://github.com/sergiocruz/react-boilerplate
Handler
参数其实就是Router组件。如果将第二个参数添加到回调 state
,则可以评估路由。
router.run(function(Handler, state) {
console.log(state.routes);
...
}
routes
属性 是一个数组,其中包含与请求匹配的每条路线的一个元素,按照它们在路线图中的嵌套顺序排列。
如果查看路由数组中的元素,您会发现可以评估 path
、name
(路由名称)、handler
对象等属性,等等
我正在做一个小样板项目,使用 node 和 express 使用 ReactJS 进行服务器端渲染。
我想知道如何识别回调中的 Handler
变量何时表示 NotFound
工厂,以便我可以抛出 404 错误 表示。类似于:res.status(404)
router.run(function(Handler) {
// HOW TO KNOW `Handler` corresponds to `NotFound`?
// I WANT TO USE SOMETHING LIKE `res.status(404)` HERE...
// Render React to a string, passing in our fetched tweets
var markup = React.renderToString(
Handler(state)
);
// Render our 'home' template
res.render('index', {
markup: markup, // Pass rendered react markup
state: JSON.stringify(state) // Pass current state to client side
});
});
如果您想完整查看文件,请随时访问 github 上的页面: https://github.com/sergiocruz/react-boilerplate/blob/master/server.js
如果您对此感到好奇,也可以在这里随意浏览整个项目:https://github.com/sergiocruz/react-boilerplate
Handler
参数其实就是Router组件。如果将第二个参数添加到回调 state
,则可以评估路由。
router.run(function(Handler, state) {
console.log(state.routes);
...
}
routes
属性 是一个数组,其中包含与请求匹配的每条路线的一个元素,按照它们在路线图中的嵌套顺序排列。
如果查看路由数组中的元素,您会发现可以评估 path
、name
(路由名称)、handler
对象等属性,等等