表示上传对象的过程。允许您监控和管理上传。
签名:
export interface UploadTask
特性
财产 | 类型 | 描述 |
---|---|---|
快照 | 上传任务快照 | 当前任务状态的快照。 |
方法
方法 | 描述 |
---|---|
取消() | 取消正在运行的任务。对完成或失败的任务没有影响。 |
捕获(拒绝) | 相当于调用then(null, onRejected) 。 |
on(事件,nextOrObserver,错误,完成) | 侦听有关此任务的事件。事件具有三个回调函数(称为next 、 error 和complete )。如果仅传递事件,则返回可用于注册回调的函数。否则,回调将在事件发生后传递。回调可以作为三个单独的参数传递,也可以作为对象的next 、 error 和complete 属性传递。三个回调中的任何一个都是可选的,只要至少指定一个即可。此外,当您添加回调时,您会得到一个返回的函数。您可以调用此函数来取消注册关联的回调。 |
暂停() | 暂停当前正在运行的任务。对暂停或失败的任务没有影响。 |
恢复() | 恢复暂停的任务。对当前正在运行或失败的任务没有影响。 |
然后(onFulfilled,onRejected) | 该对象的行为类似于 Promise,并在上传完成时解析其快照数据。 |
上传任务.snapshot
当前任务状态的快照。
签名:
snapshot: UploadTaskSnapshot;
上传任务.cancel()
取消正在运行的任务。对完成或失败的任务没有影响。
签名:
cancel(): boolean;
返回:
布尔值
如果取消有效果,则为 true。
上传任务.catch()
相当于调用then(null, onRejected)
。
签名:
catch(onRejected: (error: StorageError) => unknown): Promise<unknown>;
参数
范围 | 类型 | 描述 |
---|---|---|
被拒绝时 | (错误:存储错误) => 未知 |
返回:
承诺<未知>
上传任务.on()
侦听有关此任务的事件。
事件有3个回调函数(称为next
, error
,并complete
)。
如果仅传递事件,则返回可用于注册回调的函数。否则,回调将在事件发生后传递。
回调可以作为三个单独的参数或作为next
传递, error
,以及对象的complete
属性。三个回调中的任何一个都是可选的,只要至少指定一个即可。此外,当您添加回调时,您会得到一个返回的函数。您可以调用此函数来取消注册关联的回调。
签名:
on(event: TaskEvent, nextOrObserver?: StorageObserver<UploadTaskSnapshot> | null | ((snapshot: UploadTaskSnapshot) => unknown), error?: ((a: StorageError) => unknown) | null, complete?: Unsubscribe | null): Unsubscribe | Subscribe<UploadTaskSnapshot>;
参数
范围 | 类型 | 描述 |
---|---|---|
事件 | 任务事件 | 要侦听的事件类型。 |
下一个或观察者 | 存储观察者<上传任务快照> |空 | ((快照:上传任务快照) => 未知) | next 函数,为事件流中的每个项目或具有这三个属性( next 、 error 、 complete )中的部分或全部的观察者对象调用。 |
错误 | ((a:存储错误) => 未知) |无效的 | 如果事件流因错误而结束,则调用此函数并返回StorageError 。 |
完全的 | 取消订阅|无效的 |
返回:
如果仅传递事件参数,则返回一个可用于添加回调的函数(请参阅上面的示例)。如果传递的不仅仅是事件参数,则返回一个可以调用以取消注册回调的函数。
实施例1
**单独传递回调或在对象中传递回调。**
var next = function(snapshot) {};
var error = function(error) {};
var complete = function() {};
// The first example.
uploadTask.on(
firebase.storage.TaskEvent.STATE_CHANGED,
next,
error,
complete);
// This is equivalent to the first example.
uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED, {
'next': next,
'error': error,
'complete': complete
});
// This is equivalent to the first example.
var subscribe = uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED);
subscribe(next, error, complete);
// This is equivalent to the first example.
var subscribe = uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED);
subscribe({
'next': next,
'error': error,
'complete': complete
});
实施例2
**任何回调都是可选的。**
// Just listening for completion, this is legal.
uploadTask.on(
firebase.storage.TaskEvent.STATE_CHANGED,
null,
null,
function() {
console.log('upload complete!');
});
// Just listening for progress/state changes, this is legal.
uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED, function(snapshot) {
var percent = snapshot.bytesTransferred / snapshot.totalBytes * 100;
console.log(percent + "% done");
});
// This is also legal.
uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED, {
'complete': function() {
console.log('upload complete!');
}
});
实施例3
**使用返回的函数来删除回调。**
var unsubscribe = uploadTask.on(
firebase.storage.TaskEvent.STATE_CHANGED,
function(snapshot) {
var percent = snapshot.bytesTransferred / snapshot.totalBytes * 100;
console.log(percent + "% done");
// Stop after receiving one update.
unsubscribe();
});
// This code is equivalent to the above.
var handle = uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED);
unsubscribe = handle(function(snapshot) {
var percent = snapshot.bytesTransferred / snapshot.totalBytes * 100;
console.log(percent + "% done");
// Stop after receiving one update.
unsubscribe();
});
上传任务.pause()
暂停当前正在运行的任务。对暂停或失败的任务没有影响。
签名:
pause(): boolean;
返回:
布尔值
如果操作生效则为 true,如果忽略则为 false。
上传任务.resume()
恢复暂停的任务。对当前正在运行或失败的任务没有影响。
签名:
resume(): boolean;
返回:
布尔值
如果操作生效则为 true,如果忽略则为 false。
上传任务.then()
该对象的行为类似于 Promise,并在上传完成时解析其快照数据。
签名:
then(onFulfilled?: ((snapshot: UploadTaskSnapshot) => unknown) | null, onRejected?: ((error: StorageError) => unknown) | null): Promise<unknown>;
参数
范围 | 类型 | 描述 |
---|---|---|
已完成 | ((快照:上传任务快照) => 未知) |无效的 | 履行回调。承诺链正常工作。 |
被拒绝时 | ((错误:存储错误) => 未知) |无效的 | 拒绝回调。 |
返回:
承诺<未知>