我正在考虑创建一个谷歌地图组件。但我希望它是自包含的,因此它将拥有自己的模型,控制器和视图。因此,例如组件将从服务器获取自己的数据,并且我还能够在需要时刷新数据。理想情况下,我只是将组件添加到显示的当前模板中,例如:{{map-view}}
然后组件需要做的所有事情都将自行处理。
该组件还需要侦听来自其他控制器的触发事件,因为用户将能够搜索特定位置,并且地图将需要更改其位置。
这可以在EmberJS中做到吗?因为我没有找到这样的东西,特别是当有自己的模型时。我知道EmberJS中有一个组件,但似乎非常有限。我这么想错了吗?
答案 0 :(得分:1)
控制器不能拥有自己的模型必须将所有值传递给组件。请参阅ember文档和此Discussion
您可以制作Google地图组件,并将位置和标记数据传递给组件。由于ember数据绑定,此数据将更新。
所以你可以有这样的东西
{{map-view location=userEnteredValue}}
你可以在youtube上搜索Kris Selden的ember组件讲话,其中包括一个适合你的谷歌地图组件。
更新