2013-11-30 6 views
0

У меня есть жестко закодированные JSON-данные в kendo-ui datasoruce и вы хотите передать их в наблюдаемый наблюдаемый массив. Проблема заключается в том, что функция JSON возвращает пустой массив, который не ясен для меня, поскольку JSON жестко закодирован внутри данных источника данных.Источник данных Kendo-UI пуст

//The data hard-coded into the js-file 
var eventsViewModel = new kendo.data.DataSource({ 
data:[ 
{ id:3, 
    created:1385573907907, 
    priority:1, 
    reporter:"Martin", 
    category:"Mähdrescher", 
    type:"S690", 
    title:"Hangausgleich defekt", 
    message:"Mähdrescher umgekippt", 
    status:"offen", 
    client:"Bauer", 
    field:"Kaiserslautern - Kohlbach", 
    scenario:0, 
    document:true, 
    positionLatitude:49.405703, 
    positionLongitude :7.423623}, 

{ id:1, 
    created:1385739507907, 
    priority:3, 
    reporter:"T670-4", 
    category:"Mähdrescher", 
    type:"T670", 
    title:"Hydraulikdruck unter Minimalwert", 
    message:"Hydraulikdruck unter 200 bar", 
    status:"offen", 
    client:"Meyer", 
    field:"Homburg - Auf der Höh", 
    scenario:0, 
    document :false, 
    positionLatitude:49.342852, 
    positionLongitude:6.824287}, 
{ id:2, 
    created:1385656707907, 
    priority:2, 
    reporter:"Anna", 
    category:"Traktor", 
    type:"9560RT", 
    title:"Kette gerissen", 
    message:"Linke Kette gerissen", 
    status:"offen", 
    client:"Schulze", 
    field:"Kaiserslautern - Feldstraße", 
    scenario:0, 
    document:false, 
    positionLatitude :49.402715, 
    positionLongitude :7.445082} 
] 
}); 
var json = eventsViewModel.data().toJSON(); 
console.log(JSON.stringify(json)); 

var events = ko.observableArray(eventsViewModel.data().toJSON()); 

ko.applyBindings(eventsViewModel,document.getElementById("event-view")); 

JSbin, который показывает, что журнал пуст: http://jsbin.com/unEPAwAn/12/edit

ответ

0

Вам нужно позвонить eventsViewModel.read(); (даже если данные связаны локально), прежде чем вы можете получить доступ к данным с помощью eventsViewModel.data();

+0

Если я используйте JSON.parse в строке JSON в этом примере, я получаю этот [объект Object] перед каждым объектом внутри {} в массиве, знаете ли вы, что это значит? – amaik

+0

@amaik Я предполагаю, что вы используете Internet Explorer, и вы говорите об форматировании при использовании console.log()? Дополнительного объекта нет, это всего лишь тип данных регистрируемого свойства. –

+0

Используя firefox, но понял, спасибо – amaik

Смежные вопросы