![](/img/trans.png)
[英]TypeError: undefined is not a function (near '...productsCtg.map...') react native
[英]React - “TypeError: undefined is not a function (near '…formFields.map…')”
嘗試呈現以下反應腳本時,出現以下錯誤“TypeError:undefined is not a function('...formFields.map...'附近)”。 有誰知道我為什么會收到這個錯誤?
import React, { useState, Fragment } from "react";
import { Container } from "@material-ui/core";
export default function DynamicFields() {
const [formFields, setFormFields] = useState({
id: 0,
firstName: "",
lastName: "",
});
const [nextFieldIndex, setNextFieldIndex] = useState(1);
const handleSubmit = (e) => {
e.preventDefault();
console.log("Input fields: ", formFields);
};
const handleChange = (id, e) => {
let newFields = formFields.map((fieldSet) => {
if (fieldSet.id === id) {
fieldSet[e.target.name] = e.target.value;
}
return fieldSet;
});
setFormFields(newFields);
};
return (
<Container>
<h3>Add a name</h3>
<form onSubmit={handleSubmit}>
{formFields.map((fieldSet) => (
<div key={fieldSet.id}>
<input
type="text"
name="firstName"
value={fieldSet.firstName}
onChange={(e) => handleChange(fieldSet.id, e)}
/>
<input
type="text"
name="lastName"
value={fieldSet.firstName}
onChange={(e) => handleChange(fieldSet.id, e)}
/>
</div>
))}
</form>
</Container>
);
}
我不確定為什么會發生這種情況,我大致遵循了一個教程,但這仍然發生了。 任何建議將不勝感激。
formFields
不是數組,應將您的formFields
state 修改為:
const [formFields, setFormFields] = useState([
{
id: 0,
firstName: "",
lastName: "",
}
])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.