谷歌api地方搜索不工作节点js

时间:2017-03-12 16:18:54

标签: javascript node.js google-maps google-places-api

我想让谷歌地图api的地方工作。我找到了一个npm模块,可以很容易地将它连接到节点。

https://www.npmjs.com/package/googleplaces

我下载了模块并在config.js文件中添加了api密钥,就像它说的那样。 然后在我的main.js文件中,它基本上是服务器。我做了

const googleplaces = require("googleplaces");
parameters = {
        location: [60.164315, 24.936667],
        types: "restaurant"
      };
googleplaces.placeSearch(parameters, function (error, response) {
    if (error) throw error;
    assert.notEqual(response.results.length, 0, "Place search must not return 0 results");
});

我收到错误: TypeError: googleplaces.placeSearch is not a function

我检查了节点模块,无法弄清楚是什么问题。

1 个答案:

答案 0 :(得分:2)

基于this example here,您必须从您需要的googleplaces模块中创建一个新对象。您只是直接调用它,这就是该方法不存在的原因;它只能在使用config.js的配置设置实例化的对象上调用。

替换它:

const googlePlaces = require('googleplaces');

......用这个:

const config = require('./config.js');
const GooglePlaces = require('googleplaces');
const googlePlaces = new GooglePlaces(config.apiKey, config.outputFormat);