从函数范围返回值

时间:2019-12-03 21:48:48

标签: node.js

我可以从函数返回对象的值吗?

我有一个具有业务逻辑的服务层,我试图调用存储库层以从MongoDB中检索数据。

问题是:

$this->loadComponent('RequestHandler', [
    'inputTypeMap' => [],
    // ...
]);

这是我的存储库方法:

 ClienteGet(req) {
        var response;

        repo.get(req.params.clienteId, (err, response) => {
            console.log(response); -> here I have the correct data
        });

        console.log(response); -> only shows undefined
        return response;
    };

ClienteGet需要将响应返回给控制器,以显示在前端。

我可以在功能范围之外访问响应吗?

编辑:

存储库方法

get(clienteId, res) {
       mongoose.model('Cliente').findById(clienteId, res);
   };

1 个答案:

答案 0 :(得分:-1)

使用此代码:

 ClienteGet async (req) {
        let response;

        await repo.get(req.params.clienteId, (err, res) => {
            response = res;
        });

        return response;
    };