2 回答

TA貢獻1836條經驗 獲得超5個贊
您收到錯誤的原因TypeError: Cannot read property 'stopPropagation' of undefined是因為您number作為參數(shù)傳遞。
要測試此行為,您可以執(zhí)行以下操作:
const handleViewPhotosClick = (value) => {
console.log(value);
// handle the rest
};
如果您還希望傳遞事件對象,那么您應該在SectionImages組件上執(zhí)行以下操作:
<div className={itemClass} onClick={(e) => { this.handleSelectedImage(e, number) }}>
<img src={imagePath} alt={number} />
</div>
在組件上ListingsPage,
const handleViewPhotosClick = (e, value: number) => {
e.stopPropagation();
console.log(value);
// handle the rest
};

TA貢獻1836條經驗 獲得超3個贊
如果您想調用作為 prop 傳遞的函數(shù),您始終可以從另一個函數(shù)內部執(zhí)行此操作。只需確保向其傳遞正確的參數(shù)(在本例中為事件):
export default class SectionImages extends Component {
/* constructor */
handleSelectedImage(e, number) {
this.props.handleViewPhotosClick(e);
this.setState({ selectedImage: number });
}
render() {
const imageItem = (itemClass, imagePath, number) => {
return (
<div className={itemClass} onClick={e => this.handleSelectedImage(e, number)}>
<img src={imagePath} alt={number} />
</div>
);
};
/* return statement */
}
}
- 2 回答
- 0 關注
- 211 瀏覽
添加回答
舉報