将数据从延迟传递到

时间:2014-06-20 16:41:20

标签: javascript jquery

有没有办法将数据从延迟失败传递到失败时。

下面,当我显示所有文件时,如果任何文件在self.fileShow中失败,我会记录他们的名字。但是,一旦所有推迟器完成,是否有可能得到他们所有的名字?

$.when.apply($, $.map(files, function (file, index) {

    return self.fileShow(file, fileSrc, fileNewTemplate)
        .fail(function () {
            console.log(file.name)
        });
})).fail(function () {
    console.log('I want all the file names here that failed')
})

1 个答案:

答案 0 :(得分:0)

这不会回答您的问题标题,但会为您解决问题 传递参数you could use deferred.pipe.

var defer = $.Deferred(),
  filtered = defer.pipe( null, function( value ) {
    return value * 3;
  });

defer.reject( 6 );
filtered.fail(function( value ) {
  alert( "Value is ( 3*6 = ) 18: " + value );
});

Here's example of passing object from fail.