У меня есть проект, созданный на основе Spring-Boot Jhipster с Angular. В проекте есть персона лица. Я хочу знать, как фильтровать таблицу CRUD html по входам в поле имени.
Так что, если я введу в поле ввода "bob", я получу все имена, содержащие "bob". Похоже на этот вопрос . Этот фильтр должен получать данные со стороны сервера / сервера, а не только то, что отображается на текущей странице.
Я новичок в Angular, поэтому был бы полезен подробный ответ о том, какие файлы необходимо изменить. .
Фильтрация включена в jhipster. Я хочу, чтобы вход вызывал фильтр на стороне сервера.
Моя таблица выглядит следующим образом:
Я попытался добавить в свой html:
<th>
<form [formGroup]="userForm" (ngSubmit)="onEnter()">
<input type="text" class="form-control" formControlName="firstname">
<input type="submit" style="position: absolute; left: -9999px; width: 1px; height: 1px;"/>
</form>
</th>
В person.component.ts я создал метод для захвата события ввода:
onEnter(): void {
alert(JSON.stringify(this.userForm.value));
this.personService.lastnameContains(this.userForm.value)
}
И, глядя на person.service.ts, который имеет некоторые примеры для обновления, удаления найти, у меня есть этот метод:
lastnameContains(lastname: string): Observable<EntityArrayResponseType> {
return this.http
.get<IPerson[]>(`${this.resourceUrl}?lastname.contains=${lastname}`, { observe: 'response' })
.pipe(map((res: EntityResponseType) => this.convertDateFromServer(res)));
}
URL-адрес, на который отправляется запрос должен быть:
"http://localhost: 8080 / api / people? lastname.contains = searchstring"
UPDATE
В службе существует сгенерированный метод запроса:
query(req?: any): Observable<EntityArrayResponseType> {
const options = createRequestOption(req);
return this.http
.get<IPerson[]>(this.resourceUrl, { params: options, observe: 'response' })
.pipe(map((res: EntityArrayResponseType) => this.convert1DateArrayFromServer(res)));
}
Но похоже, что он не может направить запрос на правильный URL-адрес.
На приведенном выше рисунке показано, что код вызывается. Но на сервер вообще ничего не отправляется, не говоря уже о / api / person? Lastname = "somestring"
Как реализовать эту фильтрацию , Документы Jhispter в лучшем случае скудны.