【发布时间】:2018-02-20 19:00:22
【问题描述】:
我正在尝试在 jsdom 中加载 Google Maps API。更具体地说,我有兴趣从 getPanorama 回调函数中获取数据。但是,当我执行以下代码时,我看到“执行没有错误”,但没有看到任何消息“状态正常”或“状态不正常”。
var jsdom = require("jsdom");
var cafe = {lat: 51.47803167, lng: 0.141212256};
jsdom.env({
html: "<html><body></body></html>",
scripts: ["https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"],
done: function (err, window) {
if (err) {
console.log('Error is' + err);
} else {
// console.log(window.google);
var google = window.google;
var sv = new google.maps.StreetViewService();
sv.getPanorama({location: cafe}, function(data, status) {
if (status === 'OK') {
console.log('status ok');
console.log(data);
} else {
console.log('status not ok');
}
});
console.log('Executed with no error');
}
}
});
我也尝试修改代码并使用 jsdom.jsdom 代替 env,但没有任何效果。关于如何从节点代码中的回调中检索数据的任何想法?
【问题讨论】:
-
如果有一个能够测试它的小提琴会很棒。我根本不知道 jsdom,所以我可能不会有任何帮助,但是......你有没有尝试过使用不同 API 版本的相同代码? IE。
v=3而不是v=3.exp?
标签: javascript node.js google-maps google-maps-api-3 jsdom