В некоторых случаях мне нужно вернуть все данные без разбиения на страницы,
на основе проблемы № 219 я могу сделать что-то вроде этого
app.service('orders').find({paginate: false})
но он работает только внутри со стороны сервера, а не со стороны клиента,
может быть, было бы неплохо, если бы он мог работать с клиента или из строки запроса, подобной этой
http://api.com/orders?$limit=-1
когда service.paginate.max = false
или
http://api.com/orders?$paginate=false
По умолчанию это отключено по уважительным причинам (когда у вас есть несколько тысяч записей, отключение разбиения на страницы может привести к сбою как сервера, так и клиента), но можно сопоставить параметр запроса, чтобы отключить разбиение на страницы, как вы предложили, с помощью простой ловушки :
app.service('myservice').before({
find(hook) {
if(hook.params.query.$limit === '-1') {
hook.params.paginate = false;
delete hook.params.query.$limit;
}
}
});
работает, спасибо за быстрый ответ
Эта проблема была автоматически заблокирована, так как после ее закрытия в последнее время не было никаких действий. Пожалуйста, откройте новую проблему со ссылкой на эту проблему для связанных ошибок.
Самый полезный комментарий
По умолчанию это отключено по уважительным причинам (когда у вас есть несколько тысяч записей, отключение разбиения на страницы может привести к сбою как сервера, так и клиента), но можно сопоставить параметр запроса, чтобы отключить разбиение на страницы, как вы предложили, с помощью простой ловушки :