Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 在react中使用className_Css_Reactjs - Fatal编程技术网

Css 在react中使用className

Css 在react中使用className,css,reactjs,Css,Reactjs,那么在react中使用className的最佳实践是什么呢。在特定的多个类名中。我正在阅读文档,但没有得到明确的答案。我见过这样的事情: const divStyle = { color: 'blue', backgroundImage: 'url(' + imgUrl + ')', }; function HelloWorldComponent() { return <div style={divStyle}>Hello World!</div>; }

那么在react中使用
className
的最佳实践是什么呢。在特定的多个类名中。我正在阅读文档,但没有得到明确的答案。我见过这样的事情:

const divStyle = {
  color: 'blue',
  backgroundImage: 'url(' + imgUrl + ')',
};

function HelloWorldComponent() {
  return <div style={divStyle}>Hello World!</div>;
}
const divStyle={
颜色:“蓝色”,
背景图片:'url('+imgUrl+'),
};
函数HelloWorldComponent(){
返回你好世界!;
}
但是有没有办法让我这样做

import React from 'react';
import ReactDOM from 'react-dom';
import './css/landing.css';
import './css/w3.css';


class Home extends React.Component {
  const homeClasses = 'bgimg-1 w3-display-container w3-opacity-min';

  render() {
    return (
      <div className={homeClasses}>
        <h1>SUP</h1>
      </div>
    );
  }
}


ReactDOM.render(
  <Home />,
  document.getElementById('root')
);
从“React”导入React;
从“react dom”导入react dom;
导入“./css/landing.css”;
导入“/css/w3.css”;
类Home扩展了React.Component{
常量homeClasses='bgimg-1 w3显示容器w3不透明度最小';
render(){
返回(
啜饮
);
}
}
ReactDOM.render(
,
document.getElementById('root'))
);

或者甚至只是在类名部分列出?是的,你可以这样做!请看下面的代码片段:

类示例扩展了React.Component{
cssClasses=‘演示演示2’;
render(){
报税表(
你好,世界
);
}
}
ReactDOM.render(,document.getElementById('app'))
.demo{
颜色:蓝色
}
D.演示2{
字体大小:20px;
}

这取决于您的组件应该/将要做什么

如果您的组件是相当静态的,您将希望使用与第一个示例类似的内置样式:

const mystyle = {
width: '100%',
...
}

<div style={mystyle}>...</div>
设置组件样式的另一种常见但复杂的方法是使用一个函数,该函数将返回给定的样式对象,并像第一个示例一样使用它

最后,您应该决定是希望您的组件由设计师/用户设计样式,还是无论在何处使用,都应保持相同的外观。。。如果由设计器设置样式,只需将CSS类名从props公开到组件,或定义一个默认值:

<div className={this.props.className || 'someclassName'}>...</div>
。。。

否则,请使用上面的示例。

存在,此问题只需一个。您可以从文件(example data.json)中使用和读取这些数据,该文件可以像道具一样使用这些数据

如果您想在javascript文件中导入css,请查看
render() {
const activeClassName = this.props.className + ' mycomponent-active'

return (
   <div className={this.props.isActive ? activeClassName : this.props.className} style={ this.props.style } 
   </div>);
}
<div className={this.props.className || 'someclassName'}>...</div>