คำถามติดแท็ก .when

9
ผ่านอาร์เรย์ของ Deferreds เป็น $. เมื่อ ()
นี่คือตัวอย่างที่คาดการณ์ไว้ของสิ่งที่เกิดขึ้น: http://jsfiddle.net/adamjford/YNGcm/20/ HTML: <a href="#">Click me!</a> <div></div> JavaScript: function getSomeDeferredStuff() { var deferreds = []; var i = 1; for (i = 1; i <= 10; i++) { var count = i; deferreds.push( $.post('/echo/html/', { html: "<p>Task #" + count + " complete.", delay: count }).success(function(data) { $("div").append(data); })); } …

4
คุณทำงานกับอาร์เรย์ของ jQuery Deferreds อย่างไร
ฉันมีแอปพลิเคชันที่ต้องโหลดข้อมูลตามลำดับที่กำหนด: URL รูทจากนั้นสคีมาจากนั้นจึงเริ่มต้นแอปพลิเคชันด้วยสกีมาและ URL สำหรับวัตถุข้อมูลต่างๆ ในขณะที่ผู้ใช้สำรวจแอปพลิเคชันอ็อบเจ็กต์ข้อมูลจะถูกโหลดตรวจสอบความถูกต้องกับสคีมาและแสดง เนื่องจากผู้ใช้ CRUD ข้อมูลสคีมาจะให้การตรวจสอบความถูกต้องก่อน ฉันมีปัญหากับการเริ่มต้น ฉันใช้การเรียก Ajax เพื่อดึงอ็อบเจ็กต์รูท $. เมื่อ () จากนั้นสร้างอาร์เรย์ของสัญญาหนึ่งรายการสำหรับแต่ละออบเจ็กต์สคีมา ที่ได้ผล ฉันเห็นการดึงข้อมูลในคอนโซล จากนั้นฉันเห็นการดึงข้อมูลสำหรับสคีมาทั้งหมดดังนั้นการเรียก $ .ajax () แต่ละครั้งจึงใช้ได้ fetchschemas () ส่งคืนอาร์เรย์ของสัญญา อย่างไรก็ตามสุดท้ายเมื่อประโยค () ไม่เคยเริ่มทำงานและคำว่า "DONE" จะไม่ปรากฏบนคอนโซล ซอร์สโค้ดไปยัง jquery-1.5 ดูเหมือนจะบอกเป็นนัยว่า "null" เป็นที่ยอมรับในฐานะอ็อบเจกต์ที่จะส่งผ่านไปยัง $ .when.apply () เนื่องจากเมื่อ () จะสร้างอ็อบเจ็กต์ Deferred () ภายในเพื่อจัดการรายการหากไม่มีอ็อบเจ็กต์ ผ่านเข้ามา สิ่งนี้ใช้ได้กับ Futures.js อาร์เรย์ของ …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.