小编Ken*_*shi的帖子

谷歌地图自动完成没有大气数据

我目前正在使用Google Maps Places自动填充Javascript API,让用户通过搜索地址或企业名称来选择位置.示例代码:

autocomplete = new google.maps.places.Autocomplete(input);
google.maps.event.addListener(autocomplete, 'place_changed', function () {
    console.log(autocomplete.getPlace());
});
Run Code Online (Sandbox Code Playgroud)

这将获得以下数据.

{  
   "address_components":[  
      {  
         "long_name":"1600",
         "short_name":"1600",
         "types":[  
            "street_number"
         ]
      },
      {  
         "long_name":"Amphitheatre Parkway",
         "short_name":"Amphitheatre Pkwy",
         "types":[  
            "route"
         ]
      },
      {  
         "long_name":"Mountain View",
         "short_name":"Mountain View",
         "types":[  
            "locality",
            "political"
         ]
      },
      {  
         "long_name":"Santa Clara County",
         "short_name":"Santa Clara County",
         "types":[  
            "administrative_area_level_2",
            "political"
         ]
      },
      {  
         "long_name":"California",
         "short_name":"CA",
         "types":[  
            "administrative_area_level_1",
            "political"
         ]
      },
      {  
         "long_name":"United States",
         "short_name":"US",
         "types":[  
            "country",
            "political"
         ]
      },
      {  
         "long_name":"94043",
         "short_name":"94043",
         "types":[  
            "postal_code"
         ]
      } …
Run Code Online (Sandbox Code Playgroud)

javascript json google-maps google-maps-api-3 google-places-api

8
推荐指数
2
解决办法
5074
查看次数

服务工作者 PostMessage 错误

我有以下几点:

//main.js
if ('serviceWorker' in navigator) {
    navigator.serviceWorker.register('worker.js').then(function(worker){
//      firebase.messaging().useServiceWorker(worker);
    navigator.serviceWorker.controller.postMessage([MESSAGE HERE]);
    });
}
Run Code Online (Sandbox Code Playgroud)

在 worker.js 中:

self.onmessage=function(e){
    console.log(e.data);
}
Run Code Online (Sandbox Code Playgroud)

但在 main.js 中,我收到此错误:

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

为什么会这样?

javascript worker

1
推荐指数
1
解决办法
3867
查看次数

Firebase 函数:未定义函数

在 index.js 中,我有:

exports.makeUppercase = functions.database.ref('/messages/{pushId}/original').onCreate((snapshot, context) => {
  // Grab the current value of what was written to the Realtime Database.
  const original = snapshot.val();
  console.log('Uppercasing', context.params.pushId, original);
  const uppercase = original.toUpperCase();
  // You must return a Promise when performing asynchronous tasks inside a Functions such as
  // writing to the Firebase Realtime Database.
  // Setting an "uppercase" sibling in the Realtime Database returns a Promise.
  return snapshot.ref.parent.child('uppercase').set(uppercase);
});
Run Code Online (Sandbox Code Playgroud)

我从字面上复制粘贴了代码:https : //firebase.google.com/docs/functions/get-started

不知何故,当我部署使用

firebase deploy --only functions
Run Code Online (Sandbox Code Playgroud)

我得到: …

javascript node.js firebase google-cloud-functions

1
推荐指数
1
解决办法
3812
查看次数