我正在使用.map在反应应用中创建一个小列表
{
this.state.rooms.map((anything, indexPos) =>
<p className='rooms'
onClick={this.test}
key={indexPos}>{anything.name}
</p>
)
}
&#39;测试&#39; onClick方法调用的函数如下:
test = (e) => {
alert();
}
我的问题是我将什么代码放在&#39;()&#39;警告方法,以提醒点击了哪个特定房间?
它也可能有助于了解我的构造函数的样子:
constructor(props) {
super(props);
this.state = {
rooms: [],
display: 'none',
newRoomName: 'New room',
currentRoom: ''
};
this.roomsRef = this.props.firebase.database().ref('rooms');
}
这是与问题相关联的git文件的LINK。
能够提醒(); &#39;关键&#39;我点击的任何房间的attr或索引或房间名称将允许我处理&#39;渲染&#39;说房间选好了。感谢您的任何建议。
答案 0 :(得分:2)
您可以将单个会议室传递给test
回拨。但是我们现在有一个参数,所以你需要包装你的函数或者你立即调用{
this.state.rooms.map((room, indexPos) =>
<p className='rooms'
onClick={() => this.test(room)}
key={indexPos}>{room.name}
</p>
)
}
,这不是你想要的,你只想定义一个回调。
test = (room) => {
alert(room.name);
}
现在你的回调需要一个参数,你可以打印一些属性
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 8 And IsDate(Target.Value) Then
Target.EntireRow.Hidden = True
End If
End Sub