搜尋

首頁  >  問答  >  主體

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

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

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

react 处理 '/user'

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

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

这种情况怎么办?

PHPzPHPz2781 天前570

全部回覆(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
  • 取消回覆