Как использовать асинхронные функции в диалоговом потоке?

Я получаю сообщение об ошибке, поскольку "асинхронные функции" доступны только в es8 (используйте "esversion 8")". Я попытался поместить "esversion:8" во встроенный код, package.json, но он не работает, и функция не развертывается.

Код: index.js

'use strict';
'use esversion: 8'; //not working

async function getWeather() {
      const city = 'Mumbai';
      const OPENWEATHER_API_KEY = '<API KEY>';


      const response = await fetch(`http://api.openweathermap.org/data/2.5/weather?q=${city}&appid=${OPENWEATHER_API_KEY}`);
      const data = await response.json();
      console.log(data);

      const { main } = data;
      const { temp } = main;
      const kelvin = temp;
      const celsius = Math.round(kelvin - 273.15);

      console.log(celsius);
   }

Код package.json

{
  "name": "dialogflowFirebaseFulfillment",
  "description": "This is the default fulfillment for a Dialogflow agents using Cloud Functions for Firebase",
  "version": "0.0.1",
  "private": true,
  "license": "Apache Version 2.0",
  "author": "Google Inc.",
  "engines": {
    "node": "8"
  },
  "scripts": {
    "start": "firebase serve --only functions:dialogflowFirebaseFulfillment",
    "deploy": "firebase deploy --only functions:dialogflowFirebaseFulfillment"
  },
  "dependencies": {
    "actions-on-google": "^2.2.0",
    "firebase-admin": "^5.13.1",
    "firebase-functions": "^2.0.2",
    "dialogflow": "^0.6.0",
    "dialogflow-fulfillment": "^0.5.0",
    "esversion":"8"  //not working
  }
}

Снимок экрана с ошибкой

Есть ли решение этого или любого другого способа?


person RUSHABH SHAH    schedule 24.05.2020    source источник