แสดงขั้นตอนการอัปโหลดออบเจ็กต์ ช่วยให้คุณตรวจสอบและจัดการการอัปโหลดได้
ลายเซ็น:
export interface UploadTask
พร็อพเพอร์ตี้
พร็อพเพอร์ตี้ | ประเภท | คำอธิบาย |
---|---|---|
สแนปชอต | UploadTaskSnapshot | ภาพรวมของสถานะงานปัจจุบัน |
เมธอด
วิธีการ | คำอธิบาย |
---|---|
cancel() | ยกเลิกงานที่ทำงานอยู่ ไม่ส่งผลกระทบต่องานที่ทำสำเร็จหรือล้มเหลว |
catch(onRejected) | เทียบเท่ากับการเรียกใช้ then(null, onRejected) |
on(เหตุการณ์, nextOrObserver, ข้อผิดพลาด, เสร็จสมบูรณ์) | รอฟังเหตุการณ์ในงานนี้เหตุการณ์มีฟังก์ชัน Callback 3 ฟังก์ชัน (เรียกว่า next , error และ complete )หากผ่านเฉพาะเหตุการณ์ ระบบจะส่งคืนฟังก์ชันที่ใช้ลงทะเบียน Callback ได้ ไม่เช่นนั้น ระบบจะส่ง Callback หลังเหตุการณ์คุณอาจส่ง Callback เป็นอาร์กิวเมนต์ 3 ตัวแยกกัน หรือพร็อพเพอร์ตี้ next , error และ complete ของออบเจ็กต์ คุณจะระบุ Callback 1 รายการใน 3 รายการหรือไม่ก็ได้ ตราบใดที่มีการระบุอย่างน้อย 1 รายการ นอกจากนี้ เมื่อคุณเพิ่ม Callback คุณจะได้รับฟังก์ชันย้อนกลับ คุณสามารถเรียกใช้ฟังก์ชันนี้เพื่อยกเลิกการลงทะเบียน Callback ที่เกี่ยวข้อง |
pause() | หยุดงานที่กำลังทำงานอยู่ชั่วคราว ไม่มีผลต่องานที่หยุดชั่วคราวหรือล้มเหลว |
ressum() | ทำงานที่หยุดชั่วคราวต่อ ไม่ส่งผลกระทบต่องานที่ทำงานอยู่หรือล้มเหลวในปัจจุบัน |
แล้ว(onFulfill, onRejected) | ออบเจ็กต์นี้ทำงานเหมือน Promise และแก้ปัญหาด้วยข้อมูลสแนปชอตเมื่อการอัปโหลดเสร็จสมบูรณ์ |
UploadTask.snapshot
ภาพรวมของสถานะงานปัจจุบัน
ลายเซ็น:
snapshot: UploadTaskSnapshot;
UploadTask.cancel()
ยกเลิกงานที่ทำงานอยู่ ไม่ส่งผลกระทบต่องานที่ทำสำเร็จหรือล้มเหลว
ลายเซ็น:
cancel(): boolean;
การคืนสินค้า:
boolean
จริง หากการยกเลิกมีผล
UploadTask.catch()
เทียบเท่ากับการเรียกใช้ then(null, onRejected)
ลายเซ็น:
catch(onRejected: (error: StorageError) => unknown): Promise<unknown>;
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
เปิดถูกปฏิเสธ | (ข้อผิดพลาด: StorageError) => ไม่รู้จัก |
การคืนสินค้า:
คำมั่นสัญญา<ไม่ทราบ>
UploadTask.on()
ฟังเหตุการณ์ในงานนี้
เหตุการณ์มีฟังก์ชัน Callback 3 ฟังก์ชัน (เรียกว่า next
, error
และ complete
)
หากผ่านเฉพาะเหตุการณ์ ระบบจะส่งคืนฟังก์ชันที่สามารถใช้เพื่อลงทะเบียน Callback กลับมา มิฉะนั้น Callback จะถูกส่งต่อหลังจากเหตุการณ์
คุณอาจส่ง Callback เป็นอาร์กิวเมนต์ 3 ตัวแยกกัน หรือพร็อพเพอร์ตี้ next
, error
และ complete
ของออบเจ็กต์หนึ่งๆ คุณจะระบุ Callback 1 รายการใน 3 รายการหรือไม่ก็ได้ ตราบใดที่มีการระบุอย่างน้อย 1 รายการ นอกจากนี้ เมื่อคุณเพิ่ม Callback คุณจะได้รับฟังก์ชันย้อนกลับ คุณสามารถเรียกใช้ฟังก์ชันนี้เพื่อยกเลิกการลงทะเบียน Callback ที่เกี่ยวข้อง
ลายเซ็น:
on(event: TaskEvent, nextOrObserver?: StorageObserver<UploadTaskSnapshot> | null | ((snapshot: UploadTaskSnapshot) => unknown), error?: ((a: StorageError) => unknown) | null, complete?: Unsubscribe | null): Unsubscribe | Subscribe<UploadTaskSnapshot>;
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
เหตุการณ์ | TaskEvent | ประเภทของเหตุการณ์ที่จะฟัง |
NextOrObserver | StorageObserver<UploadTaskSnapshot> | null | ((สแนปชอต: UploadTaskSnapshot) => ไม่ทราบ) | ฟังก์ชัน next ซึ่งจะเรียกใช้แต่ละรายการในสตรีมเหตุการณ์ หรือออบเจ็กต์ผู้สังเกตการณ์ที่มีพร็อพเพอร์ตี้บางอย่างหรือทั้ง 3 คุณสมบัตินี้ (next , error , complete ) |
ข้อผิดพลาด | ((a: StorageError) => ไม่รู้จัก) | ค่าว่าง | ฟังก์ชันที่จะเรียกใช้ด้วย StorageError หากสตรีมเหตุการณ์สิ้นสุดเนื่องจากข้อผิดพลาด |
เสร็จสมบูรณ์ | ยกเลิกการสมัคร | ค่าว่าง |
การคืนสินค้า:
ยกเลิกการสมัคร | ติดตาม<UploadTaskSnapshot>
หากส่งเฉพาะอาร์กิวเมนต์เหตุการณ์ จะแสดงผลฟังก์ชันที่คุณใช้เพื่อเพิ่ม Callback ได้ (ดูตัวอย่างด้านบน) หากระบบส่งมากกว่าอาร์กิวเมนต์เหตุการณ์ จะแสดงผลฟังก์ชันที่คุณเรียกใช้เพื่อยกเลิกการลงทะเบียน Callback ได้
ตัวอย่างที่ 1
**ส่ง Callback แยกต่างหากหรือในออบเจ็กต์**
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
**ใช้ฟังก์ชันที่แสดงผลเพื่อนำ Callback ออก**
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();
});
UploadTask.pause()
หยุดงานที่กำลังทำงานอยู่ชั่วคราว ไม่มีผลต่องานที่หยุดชั่วคราวหรือล้มเหลว
ลายเซ็น:
pause(): boolean;
การคืนสินค้า:
boolean
"จริง" หากการดำเนินการมีผล "เท็จ" หากละเว้น
UploadTask.ressum()
ทำงานที่หยุดชั่วคราวต่อ ไม่ส่งผลกระทบต่องานที่ทำงานอยู่หรือล้มเหลวในปัจจุบัน
ลายเซ็น:
resume(): boolean;
การคืนสินค้า:
boolean
"จริง" หากการดำเนินการมีผล "เท็จ" หากละเว้น
UploadTask.then()
ออบเจ็กต์นี้ทำงานเหมือน Promise และแก้ปัญหาด้วยข้อมูลสแนปชอตเมื่อการอัปโหลดเสร็จสมบูรณ์
ลายเซ็น:
then(onFulfilled?: ((snapshot: UploadTaskSnapshot) => unknown) | null, onRejected?: ((error: StorageError) => unknown) | null): Promise<unknown>;
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
ดำเนินการแล้ว | ((สแนปชอต: UploadTaskSnapshot) => ไม่ทราบ) | ค่าว่าง | การติดต่อกลับการดำเนินการตามคำสั่งซื้อ Promise Chaining ทำงานได้ตามปกติ |
เปิดถูกปฏิเสธ | ((ข้อผิดพลาด: StorageError) => ไม่รู้จัก) | ค่าว่าง | การเรียกกลับเพื่อปฏิเสธ |
การคืนสินค้า:
คำมั่นสัญญา<ไม่ทราบ>