问题描述
我正在使用节点地理编码器构建一个应用程序。
当我在自己的文件中使用 node.js 时,该文件按预期工作。
但我不想使用服务器。
这是我在 node.js 文件中工作的代码。
const NodeGeocoder = require("node-geocoder");
const axios = require("axios").default;
require("dotenv").config();
const options = {
provider: "google",apiKey: process.env.GOOGLE_API_KEY,};
const geocoder = NodeGeocoder(options);
const res = async function test() {
const api_key = process.env.WEATHER_API_KEY;
const result = await geocoder.geocode("Los Angeles,CA");
const lat = result[0].latitude;
const long = result[0].longitude;
console.log(lat,long);
const weather = axios
.get(
`https://api.openweathermap.org/data/2.5/onecall?lat=${lat}&lon=${long}&units=imperial&exclude=hourly,daily,minutely{part}&appid=${api_key}`
)
.then((response) => {
console.log("test");
const currentWeather = response.data.current.weather[0].main;
const currentTemp = response.data.current.temp;
console.log(currentWeather,currentTemp);
});
};
res();
这里是复制到我的 React 应用中的完全相同的代码。
const NodeGeocoder = require("node-geocoder");
const axios = require("axios").default;
require("dotenv").config();
const options = {
provider: "google",};
const geocoder = NodeGeocoder(options);
const res = async function test() {
const api_key = process.env.WEATHER_API_KEY;
const result = await geocoder.geocode("Los Angeles,CA");
const lat = result[0].latitude;
const long = result[0].longitude;
console.log(lat,long);
};
res();
当我在浏览器中运行该应用程序时,我收到“未处理的拒绝(类型错误):net.isIPv4 不是函数”并且错误指向此代码作为问题。
const result = await geocoder.geocode("Los Angeles,CA");
我在网上读到 Browserify 是我的答案,但我对实施以及它是否真的能解决我的问题感到迷茫。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)