node js promise返回数据是Promise {_45:0,_81:0,_65:null,_54:null}

时间:2017-02-24 11:31:14

标签: node.js

我有两个文件,一个代码是从mongo数据库中查找数据,另一个文件是根据第一个文件数据存储数据。

在生成id时,代码写为

function findID(name) {
    return new promise(function (resolve, reject) {
        GenerateID.find(
            { "id_name": name },
            { "id_code": 1, "id_value": 1, "_id": 0 },
            function (err, genvalue) {
                if (err) {

                    return (console.log('error has been occured to find database id name'));
                }
                if (genvalue == null) {
                    return resolve(false);
                }
                else {
                    var stringifyval = JSON.stringify(genvalue);
                    stringifyval = stringifyval.replace('[', ' ').replace(']', ' ');
                    var data = JSON.parse(stringifyval);
                    var id = data.id_code + "" + String(data.id_value);
                    console.log(id);
                    return resolve(id);
                }
            });
    });
}

并在另一个文件中调用上面的方法数据

var GetIDPromise = GenerateID.findID(name);
GetIDPromise.then(function (val) {
    console.log(val);
    name = val;
});
console.log(name);

但是我得到的返回结果是

Promise { _45: 0, _81: 0, _65: null, _54: null }

请帮我把两个不同的文件写成什么代码。一个用于调用返回数据,另一个用于访问方法

0 个答案:

没有答案