【发布时间】:2021-03-30 00:00:19
【问题描述】:
我首先要为我在 React 中的糟糕水平道歉,我是这个框架的绝对初学者。
我试图在单击呈现的元素时触发一个简单的函数。
我希望在点击时,此元素的背景属性变为蓝色。
我知道,在常规的 ES6 中,实现这一点非常简单。然而,我的试验都没有在 React 中成功。那么我在这里请求您的宝贵帮助!
这是我的代码:
import React, { Component } from 'react';
import logo from './images/stellar.png';
function openMenu(machin){
console.log(machin);
machin.props.style.backgroundColor = 'blue';
}
class App extends Component {
render() {
return (
<div id="background">
<div className="navbar">
<div className="imgContainer" onClick={()=>{ openMenu(this) }}>
<img src={logo} alt="logo" />
</div>
<b>About</b>
</div>
</div>
);
}
}
export default App;
我做过的最相关的替代试验如下:
<div className="imgContainer" onClick={openMenu(this)}>
// Triggered function below ↓
function openMenu(){
console.log(this);
this.props.style.backgroundColor = 'blue';
}
我也尝试在我的代码中绕过 props(直接像 this.style.backgroundColor),但没有显着的结果。
截至目前,错误信息如下:Error Image
非常感谢任何帮助!
在此先感谢
【问题讨论】:
标签: reactjs class ecmascript-6 components