2017-11-18 78 views
2

我一直在试用一个项目数周的反应。我只记得在常规DOM和SVG中我应该使用className而不是class,因为class是JS中的保留关键字。React DOM是否必须使用className?为什么我没有看到任何警告?

但是,到目前为止,我所有的组件都在使用class。例如:

export default class Header extends React.Component { 
    render() { 
     return (
      <div class="Header"> 
       <img class="Logo" src="./interface/images/ea-white.png"/> 
       <h1 class="Title">{this.props.title}</h1> 
      </div> 
     ); 
    } 
} 

为什么我没有得到任何语法错误? React DOM是否必须使用className?如果我保持这种方式会发生什么?

编辑:是的,CSS文件一直在正常工作。我的控制台没有警告(这很奇怪)。

+0

是的,你必须使用'className'。你的CSS为你的造型拾取“class”吗? – Andrew

+0

@Andrew是的,一切都很完美。我只注意到,因为一个朋友指出... – Jiayang

+0

可能在[React 16中的类vs className]重复(https://stackoverflow.com/questions/46989454/class-vs-classname-in-react-16) –

回答

2

目前,它的工作原理,他们的反应会扔在你的控制台的警告。我建议使用className考虑到这是React希望你做的事情。如果你继续使用课堂,React可能会停止支持此课程。

2

React在元素上使用未知属性(如class)时会引发警告。

它还指向源代码行数,这要归功于这个PR https://github.com/facebook/react/pull/6398

+0

我在哪里可以看到警告?控制台没有任何东西。我正在使用webpack进行编译。那里也没有警告。 – Jiayang

相关问题