gpt4 book ai didi

asynchronous - MeteorwrappAsync没有方法 'apply'

转载 作者:行者123 更新时间:2023-12-04 05:11:32 25 4
gpt4 key购买 nike

我正在尝试获取一个异步函数,包装它并调用它:

s3 = new AWS.S3();
Meteor.methods({
getbuckets: function( params, buckets ) {
var buckets = Meteor.wrapAsync(
s3.listBuckets( params, function( err, data ) {
if ( err ) {
console.log( err, err.stack ); // error
} else {
return buckets;
}
return {};
}) // End listBuckets
); // End wrapAsync

return buckets( params );
}
});

调用该方法时,我收到此错误:

TypeError: Object # has no method 'apply'

this 指向带有 buckets( params ) 的行

最佳答案

Meteor.wrapAsync 采用现有的异步方法,例如 s3.listBuckets。第二个参数包含 this 应该绑定(bind)到的上下文。这应该有效:

Meteor.methods({
getbuckets: function(params) {
var listBuckets = Meteor.wrapAsync(s3.listBuckets, s3)
return listBuckets(params);
}
});

关于asynchronous - MeteorwrappAsync没有方法 'apply',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30982856/

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