我一直在努力使用这段javascript。我已经阅读了关于这个主题的不同和类似的帖子,但我找不到任何似乎能引导我解决问题的正确方向。
我需要调用var Promise = require("bluebird");
function countByTitle(catTitle){
var mongoQuery = {"ProCategory.title": new RegExp(catTitle, 'i')}
return collection2.count(mongoQuery).then(function(count) {
return {
name: catTitle,
count: count
};
});
}
collection1.find().then(function (categories) {
var categoryList = categories;
var promises = [];
for (var i = 0; i < categoryList.length; i++) {
promises.push(countByTitle(categoryList[i].title));
}
return Promise.all(promises).then(results => {
console.log(JSON.stringify(results));
})
}).catch(function (err) {
//if there is any error while resolving the promises, this block will be called
return res.status(400).send({
message: errorHandler.getErrorMessage(err)
});
});
(和watchPosition
)方法中的变量值,将它们设置为全局,然后在getCurrentPosition
内调用它们。
代码正在运行,但function initMap()
重新加载Google地图(这似乎发生在我更改标签之间的浏览器/切换时)。我无法获取全局变量来捕获下面方法中的值(在watchPosition
内)。
如何设置以下值:
updateMarker
成为全球性的?
我的主要问题是,或多或少:如何在不更新mon_lat = +position.coords.latitude;
mon_long = +position.coords.longitude;
的情况下加载脚本?我希望function initMap()
方法自动更新。
navigator.geolocation.watchPosition()