使用ReactJS,我创建了一个包含fabric office365组件的数组:

var userListItems = [];
for (let i of users) {
    userListItems.push(
        <DefaultButton >
            <Persona
                key = { i.imageInitials }
                name = { i.primaryText}
                imageUrl = { i.imageUrl }
                primaryText = { i.primaryText }
                size  = { personaSize }
                style = { personaStyle }
                onClick={this._chooseUser}
            />
        </DefaultButton>
    )
}

_chooseUser = (e) => {};


我想向每个数组项添加一个处理程序onClick。使用它,我想获取名称或项的关键字。不幸的是,我在事件对象(event.target.name)中找不到这些属性。如何从这些组件中获取数据?

最佳答案

您可以尝试将this._chooseUser包装到函数中

var userListItems = [];

    for (let i of users){
        userListItems.push(
            <DefaultButton >
                <Persona
                    key = { i.imageInitials }
                    name = { i.primaryText}
                    imageUrl = { i.imageUrl }
                    primaryText = { i.primaryText }
                    size  = { personaSize }
                    style = { personaStyle }
                    onClick={()=>{this._chooseUser(i.imageInitials)}}
                />
            </DefaultButton>
        )
    }


_chooseUser =(e)=> {
};

09-25 16:02