模板未定义 - 流星

时间:2015-06-23 19:15:10

标签: javascript meteor

我刚刚开始创建一个Meteor应用并添加了dburles:google-maps包,我似乎一直在按照他在教程中指示的步骤来实现它,但我收到了错误Template not defined,我的代码如下:

html的

<head>
  <meta charset="utf-8">
  <title>project-j</title>
  <meta name="description" content="Let's see where it takes us">
  <meta name="viewport" content="user-scalable=no, initial-scale=1, minimal-ui, maximum-scale=1, minimum-scale=1" />
</head>

<body>
  {{> map}}
</body>


<template name="map">
  <div class="map-container">
    {{> googleMap name="map" options=mapOptions}}
  </div>
</template>

的.js

Meteor.startup(function() {
  GoogleMaps.load();
});

Template.map.helpers({
  mapOptions: function() {
    if (GoogleMaps.loaded()) {
      return {
        center: new google.maps.LatLng(-37.8136, 144.9631),
        zoom: 8
      };
    }
  }
});

任何想法,我检查了完成的回购,代码似乎与我的1:1 ...?

1 个答案:

答案 0 :(得分:1)

您需要将客户端代码放在/client文件夹中或包含在Meteor.isClient的支票中:

if (Meteor.isClient) { 

    Meteor.startup(function() {...});

    Template.map.helpers({ ... });

}

如果没有,Meteor将在客户端 服务器上运行您的代码,并且未在服务器上定义模板。

您可以在http://docs.meteor.com/#/full/structuringyourapp

找到有关构建Meteor应用的更多信息