typeahead показывает только удаленные результаты, когда установлен аналогичный локальный массив - PullRequest
0 голосов
/ 16 апреля 2019

У меня все настроено правильно, насколько displayKey, и результаты отображаются, когда у меня есть локальный массив, но не иначе ...

componentDidMount () {
    this.placeInput = document.getElementById('place-input')
    this.bloodhound = new Bloodhound({
      name: "xxxxx",
      datumTokenizer: (d) => {
        return Bloodhound.tokenizers.whitespace(d.name);
      },
      queryTokenizer: Bloodhound.tokenizers.whitespace,
      prefetch: {
        url: 'http://api.geonames.org/searchJSON?username=xxxxx&featureClass=P&maxRows=5&name_startsWith=%QUERY'
      },
      //only seems to show results when this is present and those results have to be similar to 'California'
      // local: {
      //   name: 'California',
      //   title: 'California'
      // },
      remote: {
        url: "http://api.geonames.org/searchJSON?username=xxxxxx&featureClass=P&maxRows=5&name_startsWith=%QUERY",
        wildcard: '%QUERY',
      },
      limit: 10
    });
    this.bloodhound.initialize()
    $('#place-input').typeahead({
      hint: true,
      highlight: true,
      minLength: 2
    },
    {
      displayKey: 'name',
      source: this.bloodhound.ttAdapter()
    }).on('typeahead:selected', function(obj, datum) {
      console.log(datum)
    }.bind(this)); // END Instantiate the Typeahead UI
  }

Должен показывать удаленные результаты без установки локального массива

...