一、概述

  为了提高性能和跨浏览器兼容性,React实现了一个独立于浏览器的DOM系统。

  在React中,所有DOM属性和属性(包括事件处理程序)都应该是camelCased的。例如,HTML属性tabindex对应于React中的属性tabIndex。例外是aria- *和data- *属性,它们应该是小写的。例如,您可以将aria标签保留为aria标签。

二、属性差异

React和HTML之间有许多不同的属性:

2.1、checked(defaultChecked)

2.2、className【原class】

2.3、dangerouslySetInnerHTML

  dangerouslySetInnerHTML是React在浏览器DOM中使用innerHTML的替代品。一般来说,从代码中设置HTML是有风险的,因为很容易让您的用户无意中发现跨站脚本攻击(XSS)。 因此,您可以直接从React中设置HTML,但必须输入危险的SetInnerHTML并使用__html键传递对象,以提醒自己危险。例如:

function createMarkup() {
return {__html: 'First · Second'};
} function MyComponent() {
return <div dangerouslySetInnerHTML={createMarkup()} />;
}

2.4、htmlFor【for】

2.5、onChange、selected,value(defaultValue)

2.6、style

  在大多数情况下,应该使用className来引用外部CSS样式表中定义的类。style在React应用程序中最常用于在呈现时添加动态计算的样式。

  style属性接受一个带有camelCased属性的JavaScript对象,而不是一个CSS字符串。这与DOM风格的JavaScript属性一致,效率更高,并且可以防止XSS安全漏洞。例如:

const divStyle = {
color: 'blue',
backgroundImage: 'url(' + imgUrl + ')',
}; function HelloWorldComponent() {
return <div style={divStyle}>Hello World!</div>;
}

2.7、所有的Html属性被支持

 

最新文章

  1. ESXI6.0启用 snmp
  2. spring-boot 文件上传获取不到File原因,MultipartHttpServletRequest.getFiles为空
  3. C#SerialPort如何读取串口数据并显示在TextBox上
  4. CSS display 属性
  5. Latex 分段函数
  6. css编码规范
  7. iOS Core data多线程并发访问的问题
  8. 关于boost::function与boost::bind函数的使用心得
  9. 简单dp --- HDU1248寒冰王座
  10. javascript 算法
  11. iframe自适应高度的问题
  12. GameUnity 2.0 文档(三) 纸片人八方向
  13. Spark:使用Spark Shell的两个示例
  14. 数据结构课程设计四则运算表达式求值(C语言版)
  15. vuedraggable(vue2.0)组件详解
  16. [jzoj]2538.【NOIP2009TG】Hankson 的趣味题
  17. June 16. 2018, Week 24th. Saturday
  18. MT【228】整数解的个数
  19. CentOS系统 cd命令的使用
  20. http协议相关

热门文章

  1. mybatis由浅入深day01_5.3 Mapper动态代理方法
  2. HTML&CSS精选笔记_CSS高级技巧
  3. 漫谈.Net关键字系列之一Sealed与Final(转)
  4. js 小数取整,js 小数向上取整,js小数向下取整
  5. cmp()
  6. 在centos命令行下安装软件
  7. Jquery跨域Ajax取值
  8. 【PHP+Redis】 php-redis 操作类 封装
  9. 设计模式之模板方法模式(Java实现)
  10. [数据库系列之MySQL]Mysql优化笔记