我正在测试phonejs,所以我从网站下载了最新版本,在演示文件夹中有RealtoApp示例。我正在查看它的内部,我有点困惑。
数据文件夹内有一个名为 sampleData.js 的 javascript 文件,它在 RealtorApp.data.SampleData = { ... }
中定义所有静态 要处理的信息,是否有一种简单的方法可以远程绑定(bind)此信息而不是此静态数据?
其中大部分是 javascript、jquery 和 knout,所以我确信您是这方面的佼佼者。
我发誓我已经看过所有教程,我只是找到了带有加载函数和 getJson 方法的新 DevExpress.data.Datasource 对象,我认为这就是方法,但很高兴知道如何在 RealtoApp 演示中合并它.
有什么帮助吗?
最佳答案
静态数据 (RealtorApp.data.SampleData) 由 dataLayer.js 中定义的数据访问层使用
dataLayer 是一组模拟异步数据访问的函数。 因此,您可以使用 $.getJSON 或对服务器的任何其他异步调用来实现它们。 只需将 setTimeout 替换为您的异步调用,例如
function getPropertiesByCoordinates(latitude, longitude) {
var result = $.Deferred();
$.getJSON("your url", function(data) {
var properties = [];
$.each(data, function(_, value) {
properties.push(new RealtorApp.data.PropertyViewModel(value));
});
result.resolve(data);
});
// INSTEAD OF
//setTimeout(function() {
// var properties = [];
// $.each(RealtorApp.data.SampleData, function(_, value) {
// properties.push(new RealtorApp.data.PropertyViewModel(value));
// });
// result.resolve(properties);
//}, TIMEOUT);
return result.promise();
}
如果您想找到如何使用真正的远程服务的示例,请查看 Skate Shop 演示 https://www.devexpress.com/Products/HTML-JS/demos.xml#!demo=devextreme-skate-demo
实际上,PhoneJS 拥有强大的数据层(从静态 js 数组到 Rest 服务)。 查看以下链接 http://phonejs.devexpress.com/Documentation/Howto/Data_Layer?version=13_2#Data_Layer http://phonejs.devexpress.com/Documentation/Howto/Data_Source_Examples?version=13_2#Data_Source_Examples
关于javascript - Phonejs绑定(bind)数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23147303/