gpt4 book ai didi

javascript - meteor 在哪里放置全局tracker.autorun

转载 作者:行者123 更新时间:2023-11-30 16:25:19 24 4
gpt4 key购买 nike

我想知道将 Tracker.autorun 放在何处以确保其他所有内容都已加载。我以为

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

用于这种情况,但是当我从 mdg:geolocation 引用 Geolocation 对象时,它告诉我它尚未定义:

未捕获的类型错误:无法读取 null 的属性“lng”

我使用以下解决方法,但我希望有更优雅的解决方案:

 Meteor.startup(function () {
trackerGeolocationInit = setInterval(enableLocationTracking, 100);
});

enableLocationTracking = function(){

var location = Geolocation.latLng();
if(location === null)
return;
else
clearInterval(trackerGeolocationInit);

Tracker.autorun(function () {
var location = Geolocation.latLng();
Meteor.users.update(Meteor.userId(), {
$set: {
"profile.location": {
type: 'Point',
coordinates: [location.lng, location.lat]
}
}
});
});
}

最佳答案

我正在编写一个有趣的应用程序,它可以工作:

   Tracker.autorun(function () {
if(Meteor.userId())
{
var latLng = Geolocation.latLng();
var userId = Meteor.userId();
if(latLng && userId)
{
//do something
}
}
});

不需要使用间隔。我只是放入了一个名为 geolocation.js 的文件。

关于javascript - meteor 在哪里放置全局tracker.autorun,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34205808/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com