gpt4 book ai didi

node.js - Tile38 Near by 查询 Node 回调函数不工作

转载 作者:IT王子 更新时间:2023-10-29 06:09:38 24 4
gpt4 key购买 nike

我正在构建一个小型 GEO 应用程序,它使用 http://tile38.com/https://www.npmjs.com/package/tile38 Node 模块。一切正常,但我无法从 Node 模块的 NEARBY 查询中获得结果。好像回调函数没有用,我花了很多时间也没有找到出路。我想要的是从附近的查询中获取结果并分配给一个变量。

代码如下:

var Tile38 = require('tile38');

var client = new Tile38({host: 'localhost', port: 9851, debug: true });

// set a simple lat/lng coordinate
client.set('fleet', 'truck1', [33.5123, -112.2693])
// set with additional fields


client.nearbyQuery('fleet').distance().point(33.5123, -112.2693, 6000).execute((err, results) => {
console.log("########");
// this callback will be called multiple times
if (err) {
console.error("something went wrong! " + err);
} else {
console.log(results + "##########");
}
});;

但是当我尝试以下简单查询时,它工作正常。

client.get('fleet', 'truck1').then(data => {
console.log(data); // prints coordinates in geoJSON format

}).catch(err => {
console.log(err); // id not found
});

此外,当我在 tile38-cli 中尝试 RAW 查询时,它工作正常。

NEARBY fleet POINT 33.5123 -112.2693 6000

如有任何帮助,我们将不胜感激。

提前致谢。

编辑我也尝试了以下但没有用。

let query = client.nearbyQuery('fleet').distance().point(33.5123, -112.2693, 6000)
query.execute(function(results).then(results => {
console.dir(results); // results is an object.
}))

收到以下错误

query.execute(function(results).then(results => {
^
SyntaxError: Unexpected token .

最佳答案

这里是 Tile38 Node 库的作者。很抱歉让这个工作遇到麻烦。我注意到自述文件中的一个错字可能让您失望了。我会纠正这个。

execute() 方法返回一个 Promise,并且(正如您已经知道的那样)示例应该说明

query.execute().then(results => {
console.dir(results);
});

代替

query.execute(function(results).then(results => {
console.dir(results);
});

关于node.js - Tile38 Near by 查询 Node 回调函数不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44006493/

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