Qooxdoo/JSON Array ไม่ได้กำหนดค่า

ฉันกำลังทำงานเพื่อเชื่อมต่อไคลเอนต์กับเซิร์ฟเวอร์ของฉัน (node.js) ฉันใช้รหัสนี้:

var storeEmployees = new qx.data.store.Json("โหลด/ข้อมูล");

        qx.event.Registration.addListener(storeEmployees, "loaded", function(){
            var model = this.getModel();

            console.log(model.getRecords());
            console.log(model.getTotal());
            console.log(model.getStatus());
        }, storeEmployees);

เซิร์ฟเวอร์ของฉันส่งค่านี้:

{records: ["bonjour", "aurevoir"], total:2, status:"success"}

อย่างไรก็ตาม "console.log(model.getRecords())" เขียนบนคอนโซล:

Object[undefined, undefined]

แทน

Object["bonjour","aurevoir"]

ค่าสำหรับ "getTotal" และ "getStatus" ถือว่าดี ปัญหาเกิดขึ้นกับอาเรย์เท่านั้น (อาเรย์แบบธรรมดาและอาเรย์เชิงซ้อน)

มีความคิดอะไรบ้าง?

ขอบคุณล่วงหน้า !


person Gonath    schedule 28.02.2015    source แหล่งที่มา


คำตอบ (1)


ร้านค้ารวบรวมข้อมูลเพื่อสร้างโมเดลออบเจ็กต์ ซึ่งหมายความว่าคุณกำลังจัดการกับ qx.data.Array ที่นี่ ซึ่งน่าเสียดายที่ไม่สามารถเข้าถึงเครื่องหมายวงเล็บเหลี่ยมได้ (เช่น Data[0]) แต่นี่คือสิ่งที่คอนโซลทำ สำหรับการดีบักและการบันทึก คุณสามารถเข้าถึงอาร์เรย์ธรรมดาด้วยวิธี .toArray() ซึ่งจะแสดงผลลัพธ์

person Martin Wittemann    schedule 01.03.2015
comment
ขอบคุณสำหรับคำตอบ. ในกรณีของ demo-browser.data.JsonToList อย่างเป็นทางการ เราจะเห็นว่าพวกเขาใช้ไฟล์ Json นี้: (demo.qooxdoo.org/4.1/demobrowser/resource/demobrowser/demo/data/) ไฟล์นี้ยังใช้อาร์เรย์ที่มีวงเล็บเหลี่ยมและใช้งานได้ อย่างไรก็ตาม ฉันจะตรวจสอบคำตอบของคุณเพื่อให้เข้าใจได้ดีขึ้น - person Gonath; 01.03.2015
comment
ตกลงใช้ได้กับ toArray() ขอบคุณสำหรับคำตอบ ! คุณพูดถูก ปัญหาไม่ได้อยู่ใน JSON แต่อยู่ในคอนโซลเมื่อฉันพยายามเขียนค่าของอาร์เรย์ ขอบคุณ ! - person Gonath; 01.03.2015