Google Maps Autocomplete InvalidValueError: not an instance of HTMLInputElement

Google Maps Autocomplete InvalidValueError: not an instance of HTMLInputElement

我通读了一些不同的 S.O。关于这个的问题,但找不到任何表明我可能在这里遗漏的东西。我是 Ember 的新手,所以我可能把这段代码放在了错误的地方。无论如何,这就是我所拥有的:

../components/auto-complete.js

import Ember from 'ember';

export default Ember.Component.extend({
  didRender: function(){
    var defaultBounds = new google.maps.LatLngBounds(
      new google.maps.LatLng(-90, -180),
      new google.maps.LatLng(90, 180)
    );
    var options = {
      bounds: defaultBounds
    }
    var i = Ember.$('input');
    var autocomplete = new google.maps.places.Autocomplete(i, options);
  }
});

../components/auto-complete.hbs

<input id="input-user" class="controls" type="text" placeholder="Location"
          onfocus="autocomplete">

My console output

我查看了教程、文档等,这里似乎没有太多错误的余地。我也尝试过不使用 onfocus="autocomplete" 任何和所有建议将不胜感激。

Ember.$('input') returns 一个 DOM 元素;但是 google 的自动完成似乎需要 HTMLInputElement 您可以尝试以下 Ember.$('input')[0] 并且它应该可以工作。