使用KendoUI Mobile + Azure移动服务+ SQL Azure的EndlessScroll
问题描述:
过去几天我一直在努力寻找移动listview上的无尽滚动。按照演示建议,我已经设置了我的数据源和列表视图。我无法在服务器端数据上成功运行(或按'加载更多')。本地数据按预期工作。我使用了许多不同的KendoUI核心版本,结果几乎相同。使用KendoUI Mobile + Azure移动服务+ SQL Azure的EndlessScroll
但我注意到的一个区别是:演示中的“odata”部分拒绝为我工作(500内部服务器错误)。因此,我在数据源上尝试了一个正常的“GET”类型。 “GET”是odata风格(https://myserviceapi.azure-mobile.net/tables/EventTypes?$ filter = businessID%20eq%2053),它在Azure表格上开箱即用,但无尽的滚动不起作用。我也尝试了一个Azure Mobile Services API方法的正常“GET”,它基本上是一个RESTful方法,该方法返回与SQL Azure中的odata表查询相同的数据。没有任何我尝试过的工作。以下代码是我拥有的许多Kendo UI Core构建和测试的代码。
应用程序的JavaScript:
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: 'https://myserviceapi.azure-mobile.net/tables/EventTypes?$filter=businessID%20eq%20' + busID,
dataType: "json"
}
},
serverPaging: true,
pageSize: 12
});
$("#photoHolder").kendoMobileListView({
dataSource: dataSource,
template: "<p>#: eventName #</p>",
endlessScrolling: true,
filterable:{
field: "eventName",
operator: "contains",
ignoreCase: true,
placeholder: "search products..."
}
});
HTML:
<ul id="photoHolder" data-role="listview">
</ul>
Azure中的JavaScript:
exports.get = function(request, response) {
var mssql = request.service.mssql;
var cnt = request.query.pageSize;
var pnm = request.query.page;
var sql = "SELECT * FROM (SELECT ROW_NUMBER() OVER(ORDER BY zOrder) AS RowNum, * FROM myschema.EventTypes where (businessID = " + request.query.busID + ") and active = 1) AS E " +
"WHERE RowNum BETWEEN ((" + pnm + " - 1) * cnt + 1) AND (" + pnm + " * " + cnt + ") ORDER BY zOrder";
mssql.query(sql, {
success: function(results) {
response.send(200, results);
},
error: function(err) {
console.log(err);
response.send(530, { error: err });
}
});
};
答
我发现这个问题的答案时,我玩弄我自己的 “宠物”应用程序。我只需确保列表中有足够的项目来实际提供无尽的滚动体验。在Kendo UI论坛中,他们建议页面大小至少为30. {http://docs.telerik.com/kendo-ui/mobile/listview/endless-scrolling}
虽然这可能会在理论上回答这个问题,但[包括](// meta.stackoverflow.com/q/8259)这里的答案的基本部分,并提供参考链接。 – SuperBiasedMan 2015-10-12 14:06:25
谢谢@SuperBiasedMan。我是StackOverflow的新手,发现了我的约定。我会尽我所能跟随他们到最充分的。 – codeshinobi 2015-11-18 14:20:50