Feathers: Есть ли способ переопределить разбивку на страницы из строки запроса URL или клиента перьев?

Созданный на 17 янв. 2017  ·  3Комментарии  ·  Источник: feathersjs/feathers

В некоторых случаях мне нужно вернуть все данные без разбиения на страницы,
на основе проблемы № 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;
    }
  }
});

Все 3 Комментарий

По умолчанию это отключено по уважительным причинам (когда у вас есть несколько тысяч записей, отключение разбиения на страницы может привести к сбою как сервера, так и клиента), но можно сопоставить параметр запроса, чтобы отключить разбиение на страницы, как вы предложили, с помощью простой ловушки :

app.service('myservice').before({
  find(hook) {
    if(hook.params.query.$limit === '-1') {
      hook.params.paginate = false;
      delete hook.params.query.$limit;
    }
  }
});

работает, спасибо за быстрый ответ

Эта проблема была автоматически заблокирована, так как после ее закрытия в последнее время не было никаких действий. Пожалуйста, откройте новую проблему со ссылкой на эту проблему для связанных ошибок.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги