Lunr - gatsby-plugin-lunr - Могу ли я изменить данные / индекс при сборке? - PullRequest
1 голос
/ 17 апреля 2020

У меня есть проект Gatsy-Sanity, которому нужен поисковый компонент. Для этого я использовал gatsby-plugin-lunr . Я сталкиваюсь с проблемой, что мои узлы многоязычны. Например, одно из моих полей построено так:

         "title": {
            "_type": "localeString",
            "nl": "Begin ",
            "en": "Home "
         },

(Короче говоря, этот синтаксический анализатор похож на следующий. Если имеет ключ _type, который начинается с 'locale *', то возвращает только значение ключа en или nl. Это передается var)

Я мог бы сделать парсер, который разбивает / удаляет данные. У меня есть такой вид работы (пока не удалось) внутри компонента, который запускает поисковый запрос из поискового индекса. Но это будет означать, что он анализирует каждый поиск. Есть ли способ сделать это при сборке gatsby-node.js с плагином lunr? Мне это также нужно, поскольку мне нужно добавить префикс языка в строку пути / результата.

const SearchProcess = lunr => builder => {
  // how to pre-process data
}

1 Ответ

1 голос
/ 19 апреля 2020

Я собираюсь с другим плагином Гэтсби. gatsby-plugin-local-search Этот плагин может изменять данные перед их сохранением с помощью normalizer Теперь я могу вызвать метод условного изменения данных для каждого языка.

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