gpt4 book ai didi

javascript - "cannot read property ' 然后 ' of undefined",尽管返回了 Promise

转载 作者:太空宇宙 更新时间:2023-11-04 02:52:49 25 4
gpt4 key购买 nike

我面临着一个似乎很常见的问题,但是,我真的不知道如何解决它。

我正在调用一个函数,发出 GET 请求,解析返回的 JSON,然后(据说)返回一个 Promise,我用它来打印解析的 JSON 数据。但是,当我尝试这样做时,我收到了该问题标题中描述的错误。我有两个正在使用的文件。第一个简单地调用第二个函数,并尝试打印返回值(并获取错误)。

第一个文件:

var secondFile = require('./test');
secondFile.testFunc("some stuff").then(function(res) {
console.log(res);
})

第二个文件(test.js):

module.exports = {
testFunc : function(address) {
var params = {
q: address,
format: "json"
}
var baseUrl = "http://google.com";
rp({url: baseUrl,
qs: params,
method: "GET"})
.then(function(body) {
var parsedBody = JSON.parse(body);
var result = {one: parsedBody[0], two: parseBody[1]};
return new Promise(function(resolve, reject) {
resolve(result);
});
}).catch(function(err) {
console.log(err);
});
}
}

非常感谢任何帮助。

最佳答案

testFunc 没有 return 语句,因此它返回 undefined

如果您想获取 rp 的返回值(这似乎是一个 promise ),然后从 testFunc 返回该值,那么您需要添加 return 语句。

    return rp({url: baseUrl,

关于javascript - "cannot read property ' 然后 ' of undefined",尽管返回了 Promise,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42463383/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com