Jquery 在Meteor应用程序中使用geocomplete
求你了,我需要尽快解决这个问题。我一直试图将geocomplete添加到我的Meteor js应用程序中,但不断出现错误。我已经通过NPM将geocomplete安装到Meteor应用程序中。从那里我该如何使用它?或者有没有其他流星软件包实现了这一点,因为我没有。我曾尝试过跟踪此实现,但无法使其正常工作 这是UI代码Jquery 在Meteor应用程序中使用geocomplete,jquery,google-maps,meteor,meteor-blaze,geocomplete,Jquery,Google Maps,Meteor,Meteor Blaze,Geocomplete,求你了,我需要尽快解决这个问题。我一直试图将geocomplete添加到我的Meteor js应用程序中,但不断出现错误。我已经通过NPM将geocomplete安装到Meteor应用程序中。从那里我该如何使用它?或者有没有其他流星软件包实现了这一点,因为我没有。我曾尝试过跟踪此实现,但无法使其正常工作 这是UI代码 <template name="geos"> <div class="form-group"> <input id="geoc
<template name="geos">
<div class="form-group">
<input id="geocomplete" type="text" class="form-control" placeholder="Type in an address" value="Lekki Phase" style="width: 100%;" />
</div>
<script src="http://maps.googleapis.com/maps/api/js?key=AIzaSyCWz0jrRG2GoQ&libraries=places"></script>
<script src="/js/jquery.geocomplete.js"></script>
</template>
这是onrendered函数
Template.SchoolContactLayout.rendered = function () {
$(function(){
$("#geocomplete").geocomplete({
map: ".map_canvas",
details: "form",
types: ["geocode", "establishment"],
});
});
}
我在控制台上发现了这个错误
Exception from Tracker afterFlush function:
meteor.js?hash=27829e9…:930 TypeError: $(...).geocomplete is not a function
at HTMLDocument.<anonymous> (schoolcontact.js:25)
at fire (jquery.js?hash=c57b3cf…:3201)
at Object.self.add [as done] (jquery.js?hash=c57b3cf…:3247)
at jQuery.fn.ready (jquery.js?hash=c57b3cf…:3481)
at jQuery.fn.init (jquery.js?hash=c57b3cf…:2921)
at jQuery (jquery.js?hash=c57b3cf…:131)
at Template.SchoolContactLayout.rendered (schoolcontact.js:2)
at blaze.js?hash=f33d3df…:3398
at Function.Template._withTemplateInstanceFunc (blaze.js?hash=f33d3df…:3744)
at fireCallbacks (blaze.js?hash=f33d3df…:3394)
我该怎么做才能让它工作 您之所以会出现错误,是因为它无法找到dom,并将其视为meteor函数。在DOM被渲染之后,您应该调用该方法,然后使用一个“这个”关键字指向模板实例,在该实例中,JOM存在JPQuery来考虑它。p>
Template.SchoolContactLayout.onRendered(function(){
// we're using the template instance scoped jQuery
this.$("#geocomplete").geocomplete({
map: ".map_canvas",
details: "form",
types: ["geocode", "establishment"]
});
});
确认它是否对您有效。试试这个,然后告诉我它是否有效
Template.SchoolContactLayout.onCeated(function () {
$("#geocomplete").geocomplete({
map: ".map_canvas",
details: "form",
types: ["geocode", "establishment"],
});
});
谢谢你,切坦。我已经根据你的建议更改了它,现在又出现了这个错误:TypeError:this.$不是函数out.rendered school contact.js:13 at blaze.js?hash=f33df…:3398 at function.Template.\u with templateInstancefunc blaze.js?hash=f33df…:3744 at fireCallbacks blaze.js?hash=f33df…:3394您能够访问dom吗在模板中使用jquery?选中运行一些简单的jquery,比如获取textbox的值并在控制台上打印。。这将确认其jquery是否不工作,或者只确认geocomlete$geocomlete.geocomlete{details:form,types:[地理编码,建立],};这是我使用的,因为我不想显示地图。它是这样工作的。当时的担忧是谷歌地图api。谢谢
Template.SchoolContactLayout.onCeated(function () {
$("#geocomplete").geocomplete({
map: ".map_canvas",
details: "form",
types: ["geocode", "establishment"],
});
});