виджет меню InstantSearch иногда не работает в IE - PullRequest
0 голосов
/ 05 февраля 2019

Сейчас я разрабатываю поисковую страницу с помощью виджетов algolia.Если я не использую виджет menuselect, моя веб-страница работает хорошо в IE.Но если я использую виджет menuselect, виджеты algolia, следующие за menuselect, не отображаются.Поэтому я попытался проверить только menuselect виджет.Следующий код показывает мой тестовый файл.

var searchDiscover = instantsearch({
  indexName: 'demo_ecommerce',
  searchClient: algoliasearch('B1G2GM9NG0', 'aadef574be1f9252bb48d4ea09b5cfe5'),
  routing: false,
});


var widget = instantsearch.widgets.menuSelect({
  container: '#brand-list',
  attribute: 'brand',
});
searchDiscover.addWidget(widget);
searchDiscover.start();
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta
      name="viewport"
      content="width=device-width, initial-scale=1, shrink-to-fit=no"
    />
    <meta name="theme-color" content="#000000" />

    <link rel="manifest" href="./manifest.webmanifest" />
    <link rel="shortcut icon" href="./favicon.png" />

    <link
      rel="stylesheet"
      href="https://cdn.jsdelivr.net/npm/instantsearch.css@7/themes/algolia-min.css"
    />
    <link rel="stylesheet" href="./src/index.css" />
    <link rel="stylesheet" href="./src/app.css" />

    <title>ais-ecommerce-demo-app</title>
  </head>

  <body>
    <div class="ais-InstantSearch">
      <h1>InstantSearch.js e-commerce demo</h1>

      <div class="left-panel">
        <div id="clear-refinements"></div>

        <h2>Brands</h2>
        <div id="brand-list"></div>
      </div>

      <div class="right-panel">
        <div id="searchbox" class="ais-SearchBox"></div>
        <div id="hits"></div>
        <div id="pagination"></div>
      </div>
    </div>

    <script src="https://cdn.jsdelivr.net/npm/algoliasearch@3.32.0/dist/algoliasearchLite.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/instantsearch.js@3.0.0"></script>
    <script src="./src/app.js"></script>
  </body>
</html>

Он работает в Chrome, но не работает в IE (я не вижу меню в IE).С другой стороны, я могу увидеть пример использования menuselect в следующем URL, но не найти код.https://instantsearchjs.netlify.com/stories/?selectedKind=MenuSelect&selectedStory=default&full=0&addons=1&stories=1&panelRight=0&addonPanel=storybook%2Factions%2Factions-panel

Что не так в моем коде?

1 Ответ

0 голосов
/ 05 февраля 2019

Я решил эту проблему.Чтобы виджет работал в IE, я могу добавить на страницу полифиллы:

<script src="https://polyfill.io/v3/polyfill.min.js?features=default,Array.prototype.find,Array.prototype.includes"></script>
...