我正在尝试使用以下进度功能创建一个基本承诺:
asyncCall().then(function () {
that.output("complete");
},
null,
function(v) {
that.output(v);
}).done();
function asyncCall() {
return new WinJS.Promise(function (complete, error, progress) {
progress("some progress");
setTimeout(function () {
complete();
}, 1000);
});
}
我希望这会输出“进度”1 秒,然后显示“完成”;但是,永远不会输出“进度”。调试 javascript,promise 对象上调用了进度函数,但是它到达了此代码(base.js 的第 1447 行)并且未定义侦听器:
function progress(promise, value) {
var listeners = promise._listeners;
if (listeners) {
知道我在处理进度事件时缺少什么吗?