Angular 7: Как разрешить зависимость Hammer. js в модульном тесте Jasmine - PullRequest
0 голосов
/ 14 июля 2020

При написании модульных тестов для компонента, который использует ползунок материала и зависит от Hammer JS, я вижу эту ошибку WARN LOG: 'The "slide" event cannot be bound because Hammer.JS is not loaded and no custom loader has been specified.'

Я выполнил импорт и добавил поставщика для зависимости:

import { BrowserModule, HAMMER_GESTURE_CONFIG } from '@angular/platform-browser';

Но все же я получаю одну и ту же ошибку при каждом тесте. Как разрешить эту зависимость?

1 Ответ

1 голос
/ 14 июля 2020

Хорошо, это оказалось очевидным исправлением. Просто оставьте это на случай, если это будет полезно для кого-то еще, поскольку поиск в Google по этой строке ошибки дал нулевые результаты.

Просто убедитесь, что вы импортируете саму зависимость в свой модульный тест. В данном случае это hammerjs, а не поставщики, которые вы настраиваете в модуле приложения, чтобы использовать его в своих angular материальных компонентах.

Итак, внутри вашего spec тестового файла:

import 'hammerjs';

Вот и все. Предполагается, что он установлен в вашем приложении и отображается в вашем package.json, что почти наверняка будет, если оно используется компонентом.

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