Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 链和混合快速路由器(.route)和(.get、.post..etc)方法_Javascript_Express - Fatal编程技术网

Javascript 链和混合快速路由器(.route)和(.get、.post..etc)方法

Javascript 链和混合快速路由器(.route)和(.get、.post..etc)方法,javascript,express,Javascript,Express,我有以下代码结构 let router = require( 'express' ).Router(); 之后,我将我的路线定义如下: router .route( '/' ) .get( listMiddleware ); router .route( '/:id' ) .get( getOneByIdMiddleware ); 当我试图优化我的代码并删除不必要的第二个路由器调用(从我的角度来看)时,就像下面这样,它没有起作用 router .r

我有以下代码结构

let router = require( 'express' ).Router(); 
之后,我将我的路线定义如下:

router
    .route( '/' )
    .get( listMiddleware );

router
    .route( '/:id' )
    .get( getOneByIdMiddleware );
当我试图优化我的代码并删除不必要的第二个路由器调用(从我的角度来看)时,就像下面这样,它没有起作用

router
    .route( '/' )
    .get( listMiddleware )
    .route( '/:id' )
    .get( getOneByIdMiddleware );
我有这个打字错误

TypeError: router.route(...).get(...).route is not a function
.route()
在路由器原型中,我认为每个路由器方法(如get、post..等)都会返回路由器以进行进一步链接(在工作示例中,这在某种程度上是正确的)


我到底做错了什么?

事实上,
路由器.route()
不返回路由器实例,它返回一个路由实例,它有可链接的
.get()/.post()/…
方法,但不返回
.route()


如果您感兴趣,可以找到
router.route()
的实现。

实际上,
router.route()
不返回路由器实例,它返回一个路由实例,该实例具有可链接的
.get()/.post()/…
方法,但不返回
.route()

如果您感兴趣,可以找到
router.route()
的实现