【问题标题】:is new Router() and Router() identical in koa-router?koa-router 中的 new Router() 和 Router() 是否相同?
【发布时间】:2020-09-24 01:24:03
【问题描述】:

我看到使用koa-router的代码如下。

const Router = require('koa-router')

const routerWithoutNew = Router()

我认为这是一个错误,但看到它正常工作,我很惊讶。

const Router = require('koa-router')

const routerWithNew = new Router()

而且,它也可以正常工作。

routerWithoutNewrouterWithNew 有什么区别?

【问题讨论】:

    标签: javascript koa koa-router


    【解决方案1】:

    由于 Koa Router 源代码中的以下行,它们被同等对待:

    if (!(this instanceof Router)) return new Router(opts);
    

    (来自https://github.com/koajs/router/blob/56735f009768e32cce89af60337e7e2a8d6bbbc4/lib/router.js#L51

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-29
      • 2020-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-08
      • 1970-01-01
      • 2016-10-31
      相关资源
      最近更新 更多