为啥 React 没有“类”属性?
Posted
技术标签:
【中文标题】为啥 React 没有“类”属性?【英文标题】:Why isn't there a "class" prop for React?为什么 React 没有“类”属性? 【发布时间】:2017-06-14 09:10:48 【问题描述】:在来自purescript-react 的React.DOM.Props
中,DOM 节点属性几乎详尽无遗,除了 用于class
属性(我怀疑它被命名为_class
,类似于_type
用于 Purescript 的语法问题)。我试着自己做
_class :: String -> Props
_class = unsafeMkProps "class"
并尝试使用它,但在检查 html 后,React 没有包含该属性!为什么是这样?为什么我不能在我的 DOM 节点中使用 class
属性?
【问题讨论】:
【参考方案1】:您可能想在这里使用className
而不是class
。这样做是为了防止 javascript class 和 DOM 属性 class 之间的混淆。
official documentation 是这样说的:
要指定 CSS 类,请使用 className 属性。这适用于所有常规 DOM 和 SVG 元素,例如
<div>
、<a>
等。
它实际上甚至列在您链接到的页面中,here
className :: String -> Props
【讨论】:
@AthanClark,你可以使用这个并忘记className
npmjs.com/package/jsx-html-class以上是关于为啥 React 没有“类”属性?的主要内容,如果未能解决你的问题,请参考以下文章
为啥我的类没有 NSManagedObject 属性时会出现错误?
为啥基于类的视图返回类型对象'Profile'没有属性'model'?
为啥警告:未知事件处理程序属性`onSession`显示在 React 应用程序中?