Uncaught TypeError: inputArgs[0].Match不是一个函数



我开始学习与REST国家API的反应。我不得不面对错误&;Uncaught TypeError: inputArgs[0]。Match不是函数"在控制台。此外,控制台数据显示了重复的结果。你可以看到截图。

这是我的代码

import { useEffect, useState } from "react";
import "./App.css";
const gridStyle = {
display: "grid",
gridTemplateColumns: "repeat(4, 1fr)",
gridGap: "20px",
};
function App() {
return (
<div className="App">
<Countries></Countries> 
</div>
);
}
function Countries() {
const [countries, setCountries] = useState([]);
useEffect(() => {
fetch("https://restcountries.com/v3.1/all")
.then((res) => res.json())
.then((data) => setCountries(data));
}, []);
return (
<div className="all-countries">
<p>{countries.length}</p>
<div style={gridStyle} className="country-container">
{countries.map((country) => (
<Country country={country}></Country>
))}
</div>
</div>
);
}
function Country({ country }) {
console.log(country);
return (
<div className="country">
<img src={country.flags.png} alt="" />
<h1>{country.name.common}</h1>
<p>{country.name.official}</p>
<p>{country.region}</p>
<p>{country.population}</p>
<button>Details</button>
</div>
);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>

我通过传递string作为第一个参数来解决这个错误。

console.log('', data)

我认为这是打破了最近提交的React Dev Tools Chrome扩展:https://github.com/facebook/react/commit/852f10b5cf188f8aa797f9a809f0caeaa95a4231

希望提交能尽快恢复。

我有一个类似的问题,对我来说,真正的错误是在堆栈跟踪之前的"Uncaught Type error InputArgs[0]。比赛…">

因此,清除控制台,然后再次运行它以获得堆栈跟踪,然后向上滚动以查看错误。

HTH

一整天我都在试图修复这个问题,最终意识到它是从React开发工具发生的,所以我认为它将由React开发工具授权器修复。

我有同样的问题,但它工作时,我删除了console.log(variable)

删除React Dev工具。这是我迄今为止发现的唯一可行的解决方案。

如果您检查Uncaught TypeError消息的下面几行,可能会发现您修改过的文件名。对我来说,它是App.jsx。我找到console。log(变量)当我删除它,所有清除

我也面临着同样的问题,我的解决方法是……

从useState

使用useEffect来删除console.log(user)或console.dir(user)中的用户
useEffect(()=>{
if (user) {
console.log(user);
console.dir(user)
} 
},[user])

它对我有用,试着通过回复这个评论让我知道

正如@francis所提到的,一个简单的解决方案是在使用任何钩子时不添加依赖关系,首先记录一个字符串,后面跟着变量。

console.log("", variable_name);

我删除了React。index.js中的StrictMode标签,这对我有用。把

注释掉
//<React.StrictMode>
<App />
//</React.StrictMode>

最新更新