Javascript - 将此参数绑定到Promise

时间:2016-04-24 09:33:50

标签: javascript node.js promise es6-promise

我需要一个应用程序将此参数绑定到Promise,我无法找到如何执行此操作...

这正是我想要做的事情:

var myPromise = new Promise((resolve, reject) => {
    console.log(this);
});
myPromise.then();

我希望“这个”具有我想要的价值。因为我需要在外面定义它。

有可能吗?

注意:我想避免这个解决方案:

var myPromise = (that) => {
    return new Promise((resolve, reject) => {
         console.log(that);
    })
}
myPromise().then();

因为它使代码非常繁重。

1 个答案:

答案 0 :(得分:3)

箭头功能有一个词汇“this”绑定,thus it gets "this" from the enclosing context.

如果您想要指定绑定,则应尝试使用bind。示例代码:

new Promise(function(resolve, reject) {
    console.log(this);
}.bind(that));