【发布时间】:2018-10-19 20:39:19
【问题描述】:
我有一个希望在 reactJs 中重复使用的按钮组件,我希望渲染多个相同的组件,但使用不同的样式,并在按下按钮和鼠标悬停时使用不同的样式
按钮组件是:-
import React, { Component } from 'react';
//import './Buttons.css'
const buttons = (props) => {
return (
<div className="">
<button id="buttons" class="-"> {props.name}</button>
</div>
);
}
export default buttons;
主 App 组件持有一个状态,然后该状态显示按钮的名称,我相信有更好的方法来做到这一点。
我还制作了多个按钮组件,我可以通过这种方式应用 css 样式,但我确信这不是正确的方式。
class App extends Component {
state = {
name: [
{ button: 'Login' },
{ buttonTwo: 'Sign Up' },
{ buttons: 'Login' }
],
}
render() {
const style = {
backgroundColor: 'blue',
font: 'inherit',
border: '1px solid red',
padding: '8px',
};
var pressed = true
function toggle() {
pressed = !pressed
//When pressed Styles change
}
return (
<div className="App">
{/* <Right /> Temp Disabled*/}
<span><Button pressed={pressed} defaultPressed={true} pressedStyle={{color: 'blue'}}
name={this.state.name[0].button} /></span>
<span><Button name={this.state.name[1].buttonTwo} /></span>
</div>
);
}
}
export default App;
我最终的目标是创建一个登录部分,以便这些按钮成为其中的一部分。
【问题讨论】:
-
将类作为道具传递给组件
标签: javascript css reactjs