【问题标题】:Component Property available to all Views Ember?组件属性可用于所有视图 Ember?
【发布时间】:2015-08-31 13:46:42
【问题描述】:

我希望所有视图都可以使用 GoogleMap 标记和 Map 对象,是否可以访问视图可用的 google-map 组件属性?或者可能是设计错误,有人可以提出更好的解决方案。

这是场景,

  1. 我有一个带有多个标记的谷歌地图,当我将鼠标悬停在 弹出信息框。
  2. 现在我希望这个信息框随时打开 我将鼠标悬停在地图外的相同数据上。

我有两个浮动 div,一个包含 GoogleMap,另一个包含数据。

【问题讨论】:

  • 你能提供一个代码示例吗?会更容易理解您要做什么。
  • 目前无法提供代码示例。但是让我解释一下,假设你有两个 div,一个有地图,另一个有标记列表。如果我单击或悬停在该列表上,它应该显示信息框,就像这个gmaps-samples-v3.googlecode.com/svn/trunk/sidebar/…

标签: javascript css google-maps ember.js google-maps-api-3


【解决方案1】:

首先,由于未来版本的 ember 将弃用视图,因此您应该重构代码以仅使用组件。

现在,如果我正确理解您的问题,我认为您应该使用操作来使您的 2 个组件相互通信(google-maps 和 infoBox)

我的意思是,如果您将控制器用作事件调度器,则可以连接您的 2 个组件。

当您单击操作框时,向控制器发送带有适当信息的操作。

然后当控制器接收到该动作时,通过另一个动作将其分派回 google-map 组件。

【讨论】:

    【解决方案2】:

    所以,我终于实现了我想要的。我遵循了这个解决方案 GoogleMaps and Ember components respond to actions 通过在初始化时将我的 GoogleMap 组件注册为对自身的引用,我的控制器可以访问其所有(GoogleMap 组件)操作。

    【讨论】:

      猜你喜欢
      • 2020-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-12
      • 1970-01-01
      • 2012-10-16
      • 1970-01-01
      相关资源
      最近更新 更多