【发布时间】:2021-08-31 09:36:01
【问题描述】:
我创建了一个函数组件,它根据 API 值计算并返回页面按钮,每当我单击按钮时我都需要调用该函数以使其更新。 onClick() 函数位于 Class 组件内,我需要使用该 onClick() 函数调用函数组件。我无法让它工作:
功能:
function Paging(props) {
const apiPaging = props.state.apiPaging
const renderPageNumbers = apiPaging.map((links, index) => {
return <button key={index} id={index}
url={links.url}
onClick={props.data.handleClick}
className={links.active ? "mark-page" : "" }
>{links.label}
</button>
})
return (
<div id = "page-nums">
{renderPageNumbers}
</div>
)
类:
handleClick(event) {
this.fetchApi()
> Need it here <
}
return(
<div>
<Paging
data = {this}
state = {this.state}
/>
</div>
)
【问题讨论】:
-
有点不清楚是要从父组件调用子组件的函数,还是要将父组件的回调传递给子组件以附加到子组件中呈现的按钮.但是,如果 that 是你的问题,你不能调用 React 函数。也许我只是想念你所要求的,但据我所知,你所说的你想要的是能够从父级调用是父级已经拥有并作为道具传递给子组件的东西。跨度>
-
@DrewReese Paging() 函数是一个单独的组件,它是通过第一类(类似于主组件)导入的,在该类内部有一个 onClick 函数。这有点令人费解,我知道...