Sort typeahead Vorschläge mit der genauen Eingabe an der Spitze

8

Ich verwende Twitter typeahead.js 0.10.5 als Vorschlagsmotor. Es funktioniert gut, mit einer Ausnahme kann ich die Liste der Vorschläge nicht so sortieren, wie ich es möchte.

Als ein Beispiel:

%Vor%

Wenn ich "need" tippe, bekomme ich die Vorschläge nach Position in array geordnet, aber ich möchte sie per Eingabe geordnet haben, was bedeutet, dass die Reihenfolge "need", "needs", "all was ich brauche" lautet. .. Wenn er "er" eintippt, sollte es "er braucht", "alles was er braucht", "alles was ich brauche" usw.

Ich weiß, dass Bloodhound eine Sortieroption hat, aber ich weiß nicht, wie ich es in dieser speziellen Situation anwenden soll.

    
lunacafu 30.12.2014, 11:02
quelle

2 Antworten

12

Sie wollen etwas in dieser Richtung. Dadurch wird die exakte Übereinstimmung an die Spitze verschoben. Sie werden fortfahren, den Sortierer-Code zu modifizieren, um String-Case, Whitespace und wie Sie nicht perfekte, aber enge Matches behandeln wollen, zu behandeln. Dies sollte Ihnen den Einstieg erleichtern.

%Vor%     
NoDiced 05.01.2015, 09:34
quelle
7

Um alle Übereinstimmungen nach Nähe zur Eingabe zu sortieren, können Sie die Levenshtein-Entfernung von a und% co_de nehmen %. Ich habe das gerade mit fast-levenshtein umgesetzt und es funktioniert und macht gute Arbeit.

%Vor%     
Chris Wilson 18.05.2016 17:14
quelle