einstellen Ich verwende DevExtreme und Knockout. Ich möchte JSON-Daten von einem Server holen und in eine Observable speichern.Wert der beobachtbaren in asynchronen Funktion
Aktueller Ansatz:
var dataArray = ko.observableArray();
var dataId = ko.observable("");
MyApp.overview = function (params) {
"use strict";
var viewModel = {
[...]
}
return viewModel;
};
function getDataFromJson() {
$.ajax({
url: 'http://localhost:56253/test/3?format=json',
dataType: 'json',
success: function (data) {
var entries = $.map(data, function (item) { return new entry(item) });
// first entry is ID
for (var i = 1; i < entries.length; i++) {
dataArray.push(entries[i]);
}
}
});
}
function getIDFromJson() {
$.ajax({
url: 'http://localhost:56253/test/3?format=json',
dataType: 'json',
success: function (data) {
dataId(data.ID);
}
});
}
function entry(data) {
this.A = data.A,
this.B = data.B,
this.C = data.C
}
Ich bin neu in diesen Szenarien, also bin ich nicht sicher, ob meine apporach. Für die Prüfung, bin ich ruft die Funktionen der JSON-Daten manuell über Tasten zu bekommen, und ich erhalte die benötigten Daten, aber die Observablen beide enthalten diese:
function c(){if(0<arguments.length)return c.tb(c[E],arguments[0])&&(c.ga(),c[E]=arguments[0],c.fa()),this;a.l.oc(c);return c[E]}
Was bin ich? Oder ist diese Herangehensweise generell schlecht?
Was ist Ihre Serverseite Tech? –
@JasonSpake Ich benutze Servicestack – Marcel