koa-router 中使用路由参数时会遇到一个问题,就是像下面的代码在没有传入 id 是会报 404 错误
router.get('/:id', (err, ctx, next) => { // write your code; });
默认情况下这就是 path variable 参数模式
如果想要 id 这个参数传入做一件事,不传 id 也可以运行并且去做另一件事的话
此时就需要使用 query parameter 参数模式,即 (/:id?)即可,如下:
router.get('/:id?', (err, ctx, next) => { // write your code; });
这样子就可以根据传入 id 去做某些事,不传 id 去做另一些事情了,是不是很爽呢!
传入多个参数是也一样:
不输入时
当输入一个参数时
输入两个参数试试
再来三个!,不信玩不坏你!!!
额。。。你赢了 koa-router,不对!你虽然可以传任意多个参数,但是我现在要间隔者传参数,我要传第一个和第三个参数,或者直接传第二个参数,你行不行了呢?我觉得你不行!
嗯... 口说不行,直接来代码吧!
还是刚才那个路由:
这次直接传第二个参数,id 那个就不传了,直接到 name 值看看
嘿嘿嘿,(●´∀`●),不行了吧!看来我赢了啊,回头记得请我吃饭哦,不然我可不陪你玩了!
什么,请不起我吃饭!要不要这样啊,那么多人陪你玩就没有几个捐一点给你吗?
好啦好啦,不逗你了,这样吧,给你降低点难度,你要是在我只输入空格的情况下能给我返回数据我就免了你这顿饭了
看看你行不行啊:
请告诉我,这个。。。干嘛要把我的空格给变成 %20 了,不好看啊,就一个空格不好吗?
算了算了,不和你计较了,总之你欠我一顿饭,就这么说定了,等我把代码写完就来找你哈,你可别跑了啊。