Javascript React inline style-style prop需要从样式属性到值的映射,而不是字符串
我正在尝试在React应用程序中设置内联样式。在这种情况下,对于跨度:Javascript React inline style-style prop需要从样式属性到值的映射,而不是字符串,javascript,css,reactjs,Javascript,Css,Reactjs,我正在尝试在React应用程序中设置内联样式。在这种情况下,对于跨度: <span className="myClass" style={{float : 'left', paddingRight : '5px'}} > </span> React告诉我: 未捕获不变冲突:样式属性要求从 将特性样式设置为值,而不是字符串。例如 style={{marginRight:spacing+'em'}当使用JSX时。这个DOM节点 是由`语句视图'呈现的 我不太清楚这是什么
<span className="myClass" style={{float : 'left', paddingRight : '5px'}} > </span>
React告诉我:
未捕获不变冲突:样式
属性要求从
将特性样式设置为值,而不是字符串。例如
style={{marginRight:spacing+'em'}当使用JSX时。这个DOM节点
是由`语句视图'呈现的
我不太清楚这是什么意思
PS:我尝试了不同的版本,所以我做了paddingRight:5
以及paddingRight:5+'px'
以及paddingRight:5px
,但没有成功 使用“styles”道具代替style
<span className="myClass" style={{float : 'left', paddingRight : '5px'}} > </span>
这是定义和使用带有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>
)
}
}
/**
*样式定义。
*/
常量样式={
infoColor:{
颜色:“绿色”
},
警告颜色:{
颜色:“橙色”
},
错误颜色:{
颜色:“红色”
}
};
/**
*组成部分
*/
类欢迎扩展React.Component{
/**
*渲染到DOM中。
*/
render(){
返回(
欢迎
)
}
}
有一些方法可以设置React组件的样式
style={css\u object}
或style={{color:this.props.color}
className=“您的类名”
//
常量样式={
颜色:“红色”,
背景:“0f0”,
字体大小:“32px”
};
常量BTN=(道具)=>{
返回(
我的名字是{props.name}
我{props.age}岁了!
);
};
常量信息={
名称:“xgqfrms”,
年龄:23
};
render(,mountNode);
//
常量样式={
颜色:“红色”,
背景:“0f0”,
字体大小:“32px”
};
常量BTN=(道具)=>{
返回(
我的名字是{props.name}
我{props.age}岁了!
);
};
常量信息={
名称:“xgqfrms”,
年龄:23
};
render(,mountNode)代码>
不要用双引号或字符串来包装{{},JSX和HTML是不同的。见:
在HTML中是
在JSX中,您可以编写
<div style={{ backgroundColor: 'red' }}></div>
有条件的内联格式在这两个方面都是不同的。JSX和html是不同的东西,我们在JSX中添加内联css的语法有点不同。我建议浏览整个文档,以便更好地理解
styles不是有效的jsx属性……这是如何实现的?同意上面的评论,尝试了styles,但它不起作用,但如果我这样做,“style”就起作用了。不确定为什么选择此选项作为答案“styles不是有效的jsx属性”,与me@mohsinulhaq你在使用CSS模块吗?如果是这样,那么您需要className={myStyles}
,而不是style={myStyles}
。CSS模块会自动将你的样式对象转换成一个类名字符串。我将其标记为删除,因为它真的没有什么用处,而我是根据别人对这篇文章的引用来这里的,这绝对是错误的。很惊讶看到这个帖子有更高的投票率。谢谢你的回答。它使用了我最熟悉的React类模型,因为我使用的是create-React-app。图形是你自己制作的吗?如果没有,请分享你的来源!这些图形来自我的课程:斯蒂芬·格林德