React 组件上的 onChange 不会更改其父级内部的状态
因此,我创建了一个文本输入组件,并将其导入到另一个组件。 这给了它一个支柱,并说状态值应设置为e.target.value。 但是我认为这不起作用。
这是我
function Input() {
return (
<input type="text" />
)
}
export default Input
在这里进口的事情,然后将Onchange放置
function RepositoryList() {
const[repositories, setRepositories] = useState([]);
const[search, setSearch]=useState('')
const url = "https://api.adresss";
useEffect(()=> {
fetch(url)
.then((response)=> response.json())
.then(data => setRepositories(data))
},[repositories])
return (
<>
<ul>
<Input onChange={(e)=>{setSearch(e.target.value)}}/>
{repositories
.filter((repos) => repos.name.includes(search) )
.map(repository => {
return <RepositoryItem key={repository.name} repo={repository}/>
})}
</ul>
</>
)
}
export default RepositoryList
So I've created a text input component and imported it to another component.
The gave it a prop onChange and said that the state value should be set to e.target.value
but I think it doens't work this way.
here is what I did
function Input() {
return (
<input type="text" />
)
}
export default Input
then imported in here and put the onChange
function RepositoryList() {
const[repositories, setRepositories] = useState([]);
const[search, setSearch]=useState('')
const url = "https://api.adresss";
useEffect(()=> {
fetch(url)
.then((response)=> response.json())
.then(data => setRepositories(data))
},[repositories])
return (
<>
<ul>
<Input onChange={(e)=>{setSearch(e.target.value)}}/>
{repositories
.filter((repos) => repos.name.includes(search) )
.map(repository => {
return <RepositoryItem key={repository.name} repo={repository}/>
})}
</ul>
</>
)
}
export default RepositoryList
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
将 onChange 回调传递给输入
pass onChange callback to input