2011-06-30 28 views
9

Quiero crear un array observable. El siguiente código imprime "6: 0" y "3: 0", es decir, las flechas observables están vacías.Observable creadoArray está siempre vacío

He probado esto en Firefox 5 y Chrome 11.0.696.68.

¿Qué estoy haciendo mal?

var myStringArray = new Array("Bungle", "Bear", "George", "Hippo", "Zippy", "Unknown"); 

var myObjectArray = new Array(
    { name: "Bungle", type: "Bear" }, 
    { name: "George", type: "Hippo" }, 
    { name: "Zippy", type: "Unknown" } 
); 

var viewStringModel = ko.observableArray(myStringArray); 
var viewObjectModel = ko.observableArray(myObjectArray); 

console.log(myStringArray.length + " : " + viewStringModel.length); 
console.log(myObjectArray.length + " : " + viewObjectModel.length); 

Respuesta

7

cambio:

console.log(myStringArray.length + " : " + viewStringModel.length); 
console.log(myObjectArray.length + " : " + viewObjectModel.length); 

a

console.log(myStringArray.length + " : " + viewStringModel().length); 
console.log(myObjectArray.length + " : " + viewObjectModel().length); 
+0

también viewObjectModel() [0] no viewObjectModel [0] – Joe

+1

Gracias Joe, sabía que iba a ser algo obvio - que ha sido una día largo ;-) – Alistair77