ฉันมีส่วนประกอบที่ฉันสร้างขึ้น:
class Create extends Component {
constructor(props) {
super(props);
}
render() {
var playlistDOM = this.renderPlaylists(this.props.playlists);
return (
<div>
{playlistDOM}
</div>
)
}
activatePlaylist(playlistId) {
debugger;
}
renderPlaylists(playlists) {
return playlists.map(playlist => {
return <div key={playlist.playlist_id} onClick={this.activatePlaylist(playlist.playlist_id)}>{playlist.playlist_name}</div>
});
}
}
function mapStateToProps(state) {
return {
playlists: state.playlists
}
}
export default connect(mapStateToProps)(Create);
เมื่อฉันเรียกrender
หน้าactivatePlaylist
นี้สำหรับแต่ละหน้าplaylist
ในmap
ไฟล์. ถ้าฉันbind
activatePlaylist
ชอบ:
activatePlaylist.bind(this, playlist.playlist_id)
ฉันยังสามารถใช้ฟังก์ชันที่ไม่ระบุตัวตน:
onClick={() => this.activatePlaylist(playlist.playlist_id)}
จากนั้นก็ใช้งานได้ตามที่คาดไว้ ทำไมสิ่งนี้ถึงเกิดขึ้น?
React
นี้ ฉันจำผิดหรือมีการapi
เปลี่ยนแปลง?