我是Meteor的新手,试图在Meteor网站上的待办事项列表教程之后完成我的第一个项目。
我想在网站上放置Google地图,并且稍微关注此示例 - https://github.com/meteor/mobile-packages/tree/master/examples/solomo
但是,我有一个不同的项目结构,它看起来像这样:
/client
/googleMap
googleMap.html
googleMap.js
head.html
body.html
当然还有其他一些文件和文件夹,但它们对于这个问题并不重要。
现在到相应的文件:
googleMap.html
<template name="googleMap">
<div id="google-map"></div>
</template>
googleMap.js
var GoogleMap = function(container) {
var lat = 0;
var lng = 0;
var mapOptions = {
center: new google.maps.LatLng(lat, lng),
zoom: 17
};
this.map = new google.maps.Map(container, mapOptions);
};
Template.googleMap.rendered(function() {
var map = new GoogleMap(this.firstNode);
});
head.html
<head>
<script type="text/javascript"
src="https://maps.googleapis.com/maps/api/js"></script>
</head>
body.html
<body>
{{> googleMap}}
</body>
我希望(并希望)显示Google地图,但它没有,并且此错误会打印到控制台: Template.googleMap.rendered不是函数
我已经尝试将googleMap
文件夹移到client
文件夹之外,以为可能需要在服务器上执行代码,但这会导致服务器中出现更大的问题&#39;控制台: ReferenceError:模板未定义
我做错了什么?
答案 0 :(得分:5)
我认为你应该写:
Template.googleMap.rendered = function() {
var map = new GoogleMap(this.firstNode);
}