Reactアプリケーションでインラインスタイルを設定しようとしています。この場合、スパンの場合:
<span className="myClass" style={{float : 'left', paddingRight : '5px'}} > </span>
Reactが教えてくれます:
キャッチされない不変違反:
style
プロパティは、文字列ではなく、スタイルプロパティから値へのマッピングを想定しています。たとえば、JSXを使用する場合、style = {{marginRight:スペース+ 'em'}}。このDOMノードは `SentenceViewによってレンダリングされました
それが何を意味するのかよくわかりません。
PS:さまざまなバージョンを試したので、paddingRight: 5
とpaddingRight: 5 + 'px'
およびpaddingRight : 5px
を試しましたが、成功しませんでした!
「styleを使用s「スタイルの代わりに小道具
<span className="myClass" style={{float : 'left', paddingRight : '5px'}} > </span>
Reactコンポーネントのスタイルを設定する方法がいくつかあります。
https://facebook.github.io/react/docs/context.html
https://github.com/facebookincubator/create-react-app
className="your-class-name"
を使用
style={css_object}
またはstyle={{color: this.props.color}}
を使用
stylesheet.css
import './styles.css';
/*
.classname-color{
color: "red";
background: "#0f0";
}
*/
const BTN = (props) => {
return (
<div>
My name is <button>{props.name}</button>
<hr/>
I'm <span className="classname-color">{props.age}</span> yeas old!
</div>
);
};
const infos = {
name: "xgqfrms",
age: 23
};
ReactDOM.render(<BTN {...infos} />, mountNode);
.classname-color{
color: "red";
background: "#0f0";
}
// <span style={styles}>
const styles = {
color: "red",
background: "#0f0",
fontSize: "32px"
};
const BTN = (props) => {
return (
<div>
My name is <button>{props.name}</button>
<hr/>
I'm <span style={styles}>{props.age}</span> yeas old!
</div>
);
};
const infos = {
name: "xgqfrms",
age: 23
};
ReactDOM.render(<BTN {...infos} />, mountNode);
// <span style={{color: styles.color}}>
const styles = {
color: "red",
background: "#0f0",
fontSize: "32px"
};
const BTN = (props) => {
return (
<div>
My name is <button>{props.name}</button>
<hr/>
I'm <span style={{color: styles.color}}>{props.age}</span> yeas old!
</div>
);
};
const infos = {
name: "xgqfrms",
age: 23
};
ReactDOM.render(<BTN {...infos} />, mountNode);
これは、reactでインラインスタイルを定義および使用する方法です。
/**
* Style definitions.
*/
const STYLE = {
infoColor: {
color: 'green'
},
warningColor: {
color: 'orange'
},
errorColor: {
color: 'red'
}
};
/**
* Component
*/
class Welcome extends React.Component {
/**
* Rendering into the DOM.
*/
render() {
return (
<div>
<h2 style={STYLE.infoColor}>Welcome!</h2>
)
}
}
{{}}を二重引用符または文字列でラップしないでください