Fid*_*tro 4 javascript css reactjs
我正在尝试在我的React类中使用一些样式.我在做之前做过:
<div style={{background: "red"}}></div>
Run Code Online (Sandbox Code Playgroud)
我想改用变量,例如:
<div style={divStyle}></div>
Run Code Online (Sandbox Code Playgroud)
我的代码看起来像:
class HolaMundo extends React.Component {
const divStyle = {
color: 'blue',
};
render() {
return(
<div className="container" style={divStyle}>
<h1> Hola {this.props.name}</h1>
</div>
);
}
}
ReactDOM.render(<HolaMundo name="One" />, document.getElementById("app"));
Run Code Online (Sandbox Code Playgroud)
但样式不适用.我怎样才能做到这一点?
你不能在类的中间定义一个常量,这是无效的语法.根据定义1,类主体只能包含方法定义,静态方法定义和空语句(;)2.定义divStyle方法内部:
class HolaMundo extends React.Component {
render() {
const divStyle = {
color: 'blue',
};
return (
<div className="container" style={divStyle}>
<h1>Hola {this.props.name}</h1>
</div>
);
}
}
Run Code Online (Sandbox Code Playgroud)
1根据ECMAScript 2015语言规范,第14.5节 - 类定义
2 Babel目前支持类属性(带插件).您还可以通过构造函数分配实例变量,this.style = { ... }并在类中的任何位置访问它this.style.
在页面底部(类声明下方)您可以定义一个样式对象:
const styles = {
exampleStyle: {
backgroundColor: 'red',
}
};
Run Code Online (Sandbox Code Playgroud)
然后将其传递到组件样式道具中:
style={styles.exampleStyle}
Run Code Online (Sandbox Code Playgroud)
我更喜欢这样做,因为您可以将组件的所有样式保留在一个对象中,而不是为类中的每个方法都有一个样式对象。
| 归档时间: |
|
| 查看次数: |
13762 次 |
| 最近记录: |