Biểu thị quy trình tải một đối tượng lên. Cho phép bạn giám sát và quản lý việc tải lên.
Chữ ký:
export interface UploadTask
Thuộc tính
Tài sản | Loại | Mô tả |
---|---|---|
ảnh chụp nhanh | UploadTaskSnapshot | Thông tin tổng quan nhanh về trạng thái hiện tại của việc cần làm. |
Phương thức
Phương thức | Mô tả |
---|---|
cancel() | Huỷ một tác vụ đang chạy. Không ảnh hưởng đến việc cần làm đã hoàn thành hoặc không thực hiện được. |
catch(on denied) | Tương đương với việc gọi then(null, onRejected) . |
on(sự kiện; tiếp theoOrObserver; lỗi; hoàn thành) | Theo dõi các sự kiện trong tác vụ này.Các sự kiện có 3 hàm callback (gọi là next , error và complete ).Nếu chỉ sự kiện được truyền, một hàm có thể dùng để đăng ký lệnh gọi lại sẽ được trả về. Nếu không, các lệnh gọi lại sẽ được truyền sau sự kiện.Các lệnh gọi lại có thể được truyền dưới dạng 3 đối số riêng biệt hoặc dưới dạng các thuộc tính next , error và complete của một đối tượng. Bạn không bắt buộc phải sử dụng bất kỳ lệnh gọi lại nào trong số 3, miễn là bạn đã chỉ định ít nhất một lệnh gọi lại. Ngoài ra, khi thêm lệnh gọi lại, bạn sẽ nhận lại một hàm. Bạn có thể gọi hàm này để huỷ đăng ký các lệnh gọi lại liên quan. |
pause() | Tạm dừng một tác vụ đang chạy. Không ảnh hưởng đến việc cần làm đã tạm dừng hoặc không thực hiện được. |
Resume() | Tiếp tục một việc cần làm đã tạm dừng. Không ảnh hưởng đến tác vụ hiện đang chạy hoặc không thành công. |
sau đó(onFulfilled, on Ngày) | Đối tượng này hoạt động như một Lời hứa và sẽ phân giải bằng dữ liệu ảnh chụp nhanh khi quá trình tải lên hoàn tất. |
Tải lênTask.snapshot
Thông tin tổng quan nhanh về trạng thái hiện tại của việc cần làm.
Chữ ký:
snapshot: UploadTaskSnapshot;
Tải lênTask.cancel()
Huỷ một tác vụ đang chạy. Không ảnh hưởng đến việc cần làm đã hoàn thành hoặc không thực hiện được.
Chữ ký:
cancel(): boolean;
Trường hợp trả lại hàng:
boolean
Đúng nếu việc huỷ có hiệu quả.
Tải lênTask.catch()
Tương đương với việc gọi then(null, onRejected)
.
Chữ ký:
catch(onRejected: (error: StorageError) => unknown): Promise<unknown>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
onBị từ chối | (lỗi: StorageError) => không xác định |
Trường hợp trả lại hàng:
Lời hứa<không xác định>
UploadTask.on()
Theo dõi các sự kiện trong việc cần làm này.
Các sự kiện có 3 hàm callback (còn gọi là next
, error
và complete
).
Nếu chỉ có sự kiện được truyền, thì hệ thống sẽ trả về một hàm có thể dùng để đăng ký lệnh gọi lại. Nếu không, các lệnh gọi lại sẽ được truyền sau sự kiện.
Các lệnh gọi lại có thể được truyền dưới dạng 3 đối số riêng biệt hoặc dưới dạng các thuộc tính next
, error
và complete
của một đối tượng. Bạn không bắt buộc phải sử dụng bất kỳ lệnh gọi lại nào trong số 3, miễn là bạn chỉ định ít nhất một lệnh gọi lại. Ngoài ra, khi thêm lệnh gọi lại, bạn sẽ nhận lại một hàm. Bạn có thể gọi hàm này để huỷ đăng ký các lệnh gọi lại liên quan.
Chữ ký:
on(event: TaskEvent, nextOrObserver?: StorageObserver<UploadTaskSnapshot> | null | ((snapshot: UploadTaskSnapshot) => unknown), error?: ((a: StorageError) => unknown) | null, complete?: Unsubscribe | null): Unsubscribe | Subscribe<UploadTaskSnapshot>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
sự kiện | TaskEvent | Loại sự kiện để nghe. |
NextOrObserver | StorageObserver<UploadTaskSnapshot> | null | ((ảnh chụp nhanh: UploadTaskSnapshot) => không xác định) | Hàm next , được gọi cho mỗi mục trong luồng sự kiện hoặc đối tượng quan sát có một số hoặc cả ba thuộc tính này (next , error , complete ). |
error | ((a: StorageError) => không xác định) | rỗng | Một hàm được gọi bằng StorageError nếu luồng sự kiện kết thúc do có lỗi. |
đã hoàn thành | Hủy đăng ký | rỗng |
Trường hợp trả lại hàng:
Hủy đăng ký | Đăng ký<UploadTaskSnapshot>
Nếu chỉ truyền đối số sự kiện, hàm sẽ trả về một hàm mà bạn có thể dùng để thêm lệnh gọi lại (xem các ví dụ ở trên). Nếu không chỉ truyền đối số sự kiện, hàm sẽ trả về một hàm bạn có thể gọi để huỷ đăng ký các lệnh gọi lại.
Ví dụ 1
**Truyền các lệnh gọi lại một cách riêng biệt hoặc trong một đối tượng.**
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
});
Ví dụ 2
**Không bắt buộc phải gọi lại.**
// 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!');
}
});
Ví dụ 3
**Sử dụng hàm được trả về để xoá các lệnh gọi lại.**
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();
});
Tải lênTask.pause()
Tạm dừng một tác vụ đang chạy. Không ảnh hưởng đến việc cần làm đã tạm dừng hoặc không thực hiện được.
Chữ ký:
pause(): boolean;
Trường hợp trả lại hàng:
boolean
"True" nếu thao tác có hiệu lực, "false" nếu bỏ qua.
Tải lênTask.Tiếp tục()
Tiếp tục một việc cần làm đã tạm dừng. Không ảnh hưởng đến tác vụ hiện đang chạy hoặc không thành công.
Chữ ký:
resume(): boolean;
Trường hợp trả lại hàng:
boolean
"True" nếu thao tác có hiệu lực, "false" nếu bỏ qua.
UploadTask.the()
Đối tượng này hoạt động như một Lời hứa và sẽ phân giải bằng dữ liệu ảnh chụp nhanh khi quá trình tải lên hoàn tất.
Chữ ký:
then(onFulfilled?: ((snapshot: UploadTaskSnapshot) => unknown) | null, onRejected?: ((error: StorageError) => unknown) | null): Promise<unknown>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
onFulfilled (đã thực hiện) | ((ảnh chụp nhanh: UploadTaskSnapshot) => không xác định) | rỗng | Lệnh gọi lại phương thức thực hiện. Chuỗi lời hứa hoạt động như bình thường. |
onBị từ chối | ((lỗi: StorageError) => không xác định) | rỗng | Lệnh gọi lại từ chối. |
Trường hợp trả lại hàng:
Lời hứa<không xác định>