gpt4 book ai didi

google-maps - Ember 中 Google map 上的模块化标记

转载 作者:行者123 更新时间:2023-12-02 03:37:55 26 4
gpt4 key购买 nike

在 Ember map 上渲染标记。

我想要 /map 显示一张 map ,上面有一堆不同类型的标记。我希望这些标记在 map 上完全模块化。

这是我的 MapRoute:

App.MapRoute = Ember.Route.extend({
setupController: function(controller, model) {
this.store.find('marker', this.paramsFor(this.routeName)).then(function(result){
this.controllerFor('markers').set('model', result);
}
}
});

我有一个初始化谷歌地图对象的 MapView 并且有一个名为 map 的属性,该属性包含谷歌地图对象。

在我的 MarkersController 中:

App.MarkersController = Ember.ArrayController.extend({
arrayContentDidChange: function() {
// Accesss the google map object in the MapView
// Render all markers
}
});

如何从 MarkersController 中的 MapView 访问谷歌地图?

一个想法是让 MapController 了解 MapView 并让 MarkersController“需要”MapController。但我觉得让 Controller 知道它的 View 是不好的做法。

最佳答案

您应该能够使用 this.get('parentView')MarkersView 内部访问 MapView:

App.MarkersView = Ember.View.extend({
didInsertElement: function() {
console.log(this.get('parentView'));
}
});

这是您的 View 逻辑和行为应该存在的地方。如果您需要进行数据操作,我认为您应该像您所说的那样在 Controller 中使用 needs

关于google-maps - Ember 中 Google map 上的模块化标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22133044/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com