Поиск ObjectID после реализации маршрутизации в Алголии - PullRequest
3 голосов
/ 22 марта 2019

У меня есть функция, с помощью которой я создаю URL, например:

http://localhost/listings?q=&idx=content_index&p=0&dFR[objectID][0]=97&dFR[objectID][1]=96

. Он создает facetFilters: [["objectID: 97", "objectID: 96"]] "}. У меня есть всетакже функция, которая очищает все фильтры:

        search.addWidget(
        instantsearch.widgets.clearAll({
            container: '#clearAll',
            templates: {
                link: '<i class="icon icon-undo2"></i>'
            },
            autoHideContainer: false,
            clearsQuery: true
        })
    );

Это прекрасно работает и очищает вышеупомянутый фильтр также.Но проблема возникла, когда началась маршрутизация. С маршрутизацией,

http://localhost/listings?q=&idx=content_index&p=0&dFR%5Bgenres.name%5D%5B0%5D=Comedy

изменилось на:

http://localhost/listings?genres=Comedy

Внесены следующие изменения для вышеперечисленного:

routing: {
stateMapping: {
    stateToRoute(uiState) {

        return {
            query: uiState.query,
            // we use the character ~ as it is one that is rarely present in data and renders well in urls
            genres:
            uiState.refinementList &&
            uiState.refinementList['genres.name'] &&
            uiState.refinementList['genres.name'].join('~'),
            page: uiState.page
        };
    },
    routeToState(routeState) {

        return {
            query: routeState.query,
            refinementList: {
                'genres.name': routeState.genres && routeState.genres.split('~'),
            },
            page: routeState.page
        };
    }
}

},

Необходимо реализовать ту же функциональность для objectID. Как это сделать?

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