Поэтому я создаю приложение Apache Cordova (Android), основанное на angularjs, и используя библиотеку WindowsAzure MobileServiceClient для извлечения данных из моей таблицы Easy Table, созданной в базе данных SQL.
Это работает! Пока я не захочу получить более 50 записей. Таким образом, я добавил.take(100) в мое чтение таблицы. Еще 50 записей.. Тогда я подумал, может быть, функция принятия не работает вообще, поэтому я изменил ее до 5, и у меня только 5 записей. Таким образом, функция приема работает несколько, но не более 50 записей.
Так как это node.js backend, как увеличить размер страницы?
Вот мой текущий код:
msc.tables.pokemonType = null;
msc.tables.pokemon = null;
msc.init = function () {
console.log('MobileServiceClient initializing...');
var mobileServiceClient = new WindowsAzure.MobileServiceClient("https://blablablabla");
msc.tables.pokemonType = mobileServiceClient.getTable('PokemonType');
msc.tables.pokemon = mobileServiceClient.getTable('Pokemon');
console.log('MobileServiceClient initialized!');
}
msc.getAllPokemonTypes = function() {
console.log('getAllPokemonTypes - called');
return msc.tables.pokemonType.read().then(function (pokemonTypes) {
console.log('getAllPokemonTypes - done');
return pokemonTypes;
}, msc.handleError);
}
msc.getAllPokemons = function () {
console.log('getAllPokemons - called');
return msc.tables.pokemon.take(100).read().then(function (pokemons) {
console.log('getAllPokemons - done');
return pokemons;
}, msc.handleError);
}
Согласно исходному коду операций таблицы Mobile Apps в node.js, операция чтения в конечном итоге принимает context.query
который является объектом queryjs
, который содержит функцию take()
которая может ограничить количество элементов, возвращаемых указанному числу.
Кроме того, функция take()
содержится в sdk сервера мобильных приложений, поэтому она не работает с вашим конечным кодом клиента.
Вы можете внести некоторые изменения в свои сценарии Easy Tables, EG
table.read(function (context) {
context.query.take(100);
return context.execute();
});