gpt4 book ai didi

reactjs - 如何在 react 中访问按钮类型 mui ListItem 的名称

转载 作者:行者123 更新时间:2023-12-02 03:22:46 25 4
gpt4 key购买 nike

我创建了一个material-ui列表,其中每个ListItem都是一个按钮,但是当我尝试访问按钮的name属性时,它给出了未定义。

import React from 'react';
import LoginFront from './login/loginFront';
import {BrowserRouter, Route} from 'react-router-dom';
import {List, ListItem, ListItemText} from '@material-ui/core';

class App extends React.Component {
render(){
return(
<List component='nav'>
<ListItem button name='bName' onClick={event => console.log(event.target.name)} />
<ListItemText primary='item1' />
</List>
)
}
}
export default App;

console.log(event.target.name) 给出 undefined

最佳答案

onClick={event => console.log(event.target.getAttribute('name'))}

使用getAttribute方法获取name的值

您在页面上看到的 html 只是 DOM 的渲染表示。 DOM 树上的节点属性与 html 元素上的属性不匹配。

在创建标准时,他们不希望 DOM 元素的接口(interface)与属性相同,因为您可能会添加与现有属性或方法冲突的属性,但这只是猜测。

编辑

onClick={event => console.log(event.currentTarget.getAttribute('name'))}

参见here了解 targetcurrentTarget 之间的差异。

The thing is when you define onClick on the topMost parent, you need to use e.currentTarget.id instead of e.target.id since e.target will give you the element on which you clicked rather then the parent on which onClick listener is defined

关于reactjs - 如何在 react 中访问按钮类型 mui ListItem 的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54304788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com