从流星模板中注入Javascript

时间:2016-04-22 21:08:42

标签: javascript google-maps meteor google-maps-api-3

我从我的收藏中拉出长条拉链,我希望在页面的地图上生成动态的Google地图标记。

数据在源代码中填充正常,但标记无法在页面上显示。

是否可以将javascript对象注入<script></script>代码?

的Javascript

  Template.maps.onRendered(function() {
    var map = new google.maps.Map(this.find('.map'), {zoom: 8, center: new google.maps.LatLng(33.658206, -111.962827)});
    map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
  });

HTML

<template name="maps">
    <div id="map-canvas"></div>
 </template>

1 个答案:

答案 0 :(得分:1)

不要混用html和js。将所有javascript放在相关模板的方法中。

Template.mapWrapper.onRendered(function() {
  var map = new google.maps.Map(this.find('.map'), {...});
  _.each(locations, function(location) {
    marker = new google.maps.Marker({...});
  });
});

您还应该使用类或数据参数而不是元素ID,但最重要的是,不要混合使用html和js。