찾다

 >  Q&A  >  본문

node.js - koajs和react开发,koa如何把router的权利交给react?

koajs和react开发,如何控制路由?

因为koa和react都会处理路由,但是koa的权利更大,比如

react 处理 '/user'

而 koa 对'/user'没有特殊处理,也就是404

这时,直接访问'/user'就会得到 404,而得不到react的处理结果

这种情况怎么办?

PHPzPHPz2781일 전571

모든 응답(6)나는 대답할 것이다

  • 大家讲道理

    大家讲道理2017-04-17 14:29:27

    可以使用react服务器渲染中的路由匹配,react-router中有match方法
    可以看看 https://github.com/zhanfang/koa-react-weixin 这个里面注释的代码,我是觉得这么做必要性不是很大,还有一个办法就是我现在的做法,可以参考链接中的代码

    회신하다
    0
  • 迷茫

    迷茫2017-04-17 14:29:27

    找到办法了,koa不处理404好像就可以了,感觉好水

    회신하다
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 14:29:27

    react-router是前端路由吧,和koa的路由不一样的

    회신하다
    0
  • 巴扎黑

    巴扎黑2017-04-17 14:29:27

    react router官方文档里提到了 如果前端路由的话 后端只需要对相应的路径返回HTML文件就可以了 你可以试试

    회신하다
    0
  • ringa_lee

    ringa_lee2017-04-17 14:29:27

    应该没啥关系,前后端路由没说要统一呀

    회신하다
    0
  • ringa_lee

    ringa_lee2017-04-17 14:29:27

    KOA在404的时候指向index.html

    参考
    router.get('*',(ctx, next) => {
    ctx.type = 'html';
    ctx.body = fs.createReadStream('./index.html');
    });

    회신하다
    0
  • 취소회신하다