未处理的拒绝TypeError:net.isIPv4 不是函数 ReactJS

问题描述

我正在使用节点地理编码器构建一个应用程序。

当我在自己的文件中使用 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 (将#修改为@)