Трубу, которую я только что установил, не удалось найти во время тестирования с помощью Karma - PullRequest
0 голосов
/ 27 января 2020

Недавно я написал примитивную трубу, используемую для поиска элементов:

import { Pipe, PipeTransform } from '@angular/core';

@Pipe({
  name: 'search'
})
export class SearchPipe implements PipeTransform {

  transform(value: any, args?: any): any {

    if (!value) {return null; }
    if (!args) {return value; }

    args = args.toLowerCase();

    return value.filter((item) => {
        return JSON.stringify(item).toLowerCase().includes(args);
    });
}

}

Мой тестовый файл конвейера является файлом по умолчанию:

import { SearchPipe } from './search.pipe';

describe('SearchPipe', () => {
  it('create an instance', () => {
    const pipe = new SearchPipe();
    expect(pipe).toBeTruthy();
  });
});

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

Failed: Template parse errors:
The pipe 'search' could not be found ("target.value)">
      <!-- maybe add | async pipe -->
    <option class="fetchedUser" *ngFor="let [ERROR ->]user of users | search: query" value="{{user.firstname}}">
        {{user?.lastname}}, {{user?.first"): ng:///DynamicTestModule/UsersComponent.html@13:44

Любая подсказка, почему это происходит? Как исправить эту ошибку?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...