Я пытаюсь реализовать мгновенный поиск algolia в моем приложении Angular 5 и использую этот учебник: Угловой полнотекстовый поиск с помощью интерфейса Algolia И я установил Instantsearch.js
Я получаю сообщение об ошибке: ERROR TypeError: instantsearch is not a function at SearchUiComponent.ngOnInit
Я попытался добавить в оператор импорта следующее:
import * as instantsearch from 'instantsearch.js';
declare var instantsearch: any;
А также
import * as instantsearch from 'instantsearch.js/es'
SearchUi.component:
import { Component, OnInit } from '@angular/core';
import { environment } from '../../environments/environment';
import * as instantsearch from 'instantsearch.js'
export class SearchUiComponent implements OnInit {
search: any;
constructor() { }
ngOnInit() {
const options = environment.algolia;
this.search = instantsearch(options);
// search box widget
this.search.addWidget(
instantsearch.widgets.searchBox({
container: '#search-box',
autofocus: false,
placeholder: 'Search for actors',
poweredBy: true
})
);
this.search.start();
SearchUi.html
<div id = "search-box">
<!-- SearchBox widget will appear here -->
</div>
<div id = "hits">
<!-- Hits widget will appear here -->
</div>





Изменение импорта на, похоже, решает проблему:
import instantsearch from 'instantsearch.js/dist-es5-module/src/lib/main';