Упоминания пользователей на веб-сайте с использованием Algolia и Typeahead

В настоящее время я использую Algolia для индексации своих пользовательских данных и Typeahead для предоставления результатов поиска с автозаполнением, и мне очень нравится, как все это работает.

Теперь мне любопытно добавить упоминания (@user) на мой веб-сайт в текстовые области, и я считаю, что должен быть «довольно» простой способ использования javascript для идентификации всякий раз, когда я использую символ «@» в текстовой области, инициализирую Typeahead, и позвольте мне автозаполнять пользователя в моем тексте.

У кого-нибудь есть идеи, как это сделать? Возможно, используя:

if (string.indexOf("@") > -1 )
{
   // initialize typeahead
}

Не уверен, что это может быть так просто...

Спасибо!


person Matt Pierce    schedule 08.06.2016    source источник
comment
Начните здесь: w3schools.com/jsref/event_onkeyup.asp   -  person William B    schedule 08.06.2016
comment
Верно, извините, надо было включить это во фрагмент кода, а не предполагать.   -  person Matt Pierce    schedule 08.06.2016


Ответы (1)


Я думаю, вы должны найти все, что вам нужно, именно здесь: https://www.algolia.com/doc/search/autocomplete-textarea

Один из подходов заключается в использовании подключаемых модулей и сценариев Javascript, которые в большинстве случаев выполняют очень простой текстовый поиск (на основе регулярных выражений) по элементам, уже предварительно заполненным в HTML или динамически извлекаемым из базы данных с помощью запросов AJAX. Эти решения работают нормально, но быстро показывают свои ограничения, как только вы хотите предложить своим пользователям возможность поиска, которая обрабатывает их опечатки, работает быстро и может работать с сотнями, тысячами или миллионами элементов.

person Shipow    schedule 10.06.2016