Я использую FeathersJS и ReactJs для создания приложения, и теперь я застрял в определенной точке.
Пользовательский интерфейс, над которым я работаю, представляет собой таблицу, и у меня есть панель навигации для управления отображаемыми данными, как на изображении.
При выборе пользователи могут выбрать, сколько результатов они увидят на странице. Кнопки навигации перемещаются между разными страницами. Каждый раз, когда одна из этих вещей меняется, я вычисляю
let skip = (this.state.page - 1) * this.state.limit;
let url = '/users?$sort[name]=1&$skip=' + skip + '&$limit=' + this.state.limit;
а затем сделайте REST-вызов бэкэнду Feathers. Это работает отлично.
Красная стрелка указывает на мою проблему.
Когда пользователь вводит часть имени в это поле ввода, мне нужно выполнить поиск в таблице «Пользователи», чтобы найти всех пользователей с введенной строкой в имени, независимо от позиции и, желательно, без учета регистра. В этом случае я создаю URL-адрес, например
let url = '/users?name=<typed input'>;
а затем сделать вызов REST.
Бывает, что этот вызов попытается найти имя равное , а это не то, что мне нужно. Затем я предполагаю, что мне придется настроить мой метод find() так, чтобы он работал по-разному, когда он получает два разных набора параметров, например, в
пользователи.class.js
const { Service } = require('feathers-sequelize');
exports.Users = class Users extends Service {
find(data,params) {
if (data.query.name) {
// Do something to get the search I need
}
return super.find(data,params);
}
};
Но я действительно не знаю, чтобы продолжить с этого момента.
Должен ли я реализовать необработанный запрос Sequelize внутри этого if
? Как лучше всего получить нужные мне данные?