React的几个简单特点
react是一个视图层框架官网地址:http://facebook.github.io/react/或https://reactjs.org/一、高性能React 通过对 DOM 的模拟(Virtual DOM),并配合 diff 算法,最大限度地减少与 DOM 的交互,从而提升性能。diff算法过程:react操作虚拟dom,操作过程中会进行diff算法,对比VirtualDOM的初始状态和结束
·
react是一个视图层框架
官网地址:http://facebook.github.io/react/ 或 https://reactjs.org/
一、高性能
React 通过对 DOM 的模拟(Virtual DOM),并配合 diff 算法,最大限度地减少与 DOM 的交互,从而提升性能。
- diff算法过程:
react操作虚拟dom,操作过程中会进行diff算法,对比VirtualDOM的初始状态和结束状态,过滤掉一些没必要的节点操作,然后把结束状态的虚拟DOM赋值给真实DOM。这过程提高了性能
二、组件化开发
通过 React 构建组件,使得代码更加容易得到复用,能够高效率的应用在大项目的开发中。
三、单向相应的数据流
React 中的数据是单向自顶向下传递的,父组件数据的更新会自动传递到子组件,但子组件的数据更新不会影响到父组件,也不能在子组件修改父组件传入的数据
四、JSX扩展
JSX 是 JavaScript 语法的扩展。React 开发不一定使用 JSX ,但我们建议使用它。
JSX的遵循规则
- 因为 Javascript 代码与 JSX 代码并不兼容,凡是使用 JSX 的 script 标签 都需要加上 type=“text/babel”
(如果是使用webpack配置的环境就不用) - 在 jsx 代码中,同为 js 关键字的 html 属性不能直接使用:
- class -> className,
- for -> htmlFor
- 属性使用驼峰
- tabindex -> tabIndex
- onkeydown -> onKeyDown
- autofocus -> autoFocus
- 必须要有结束标签
< input type=“text” />
< img src=“logo.png” />
- style 必须为对象,又因为对象为js,所以必须对象必须写在{}里面且css 的属性必须为驼峰写法
< div style={{ backgroundColor :"#f60"}}
例子:
const username=‘laoxie’;
const style={color:’#58bc58’}
< h2 className="title"data-name={username}style={style}>
- 在JSX中使用js必须写在花括号{}内,不允许出现 var,let,const 等关键字
- 写在JSX里面的代码,如果想要注释,需要先把它变成对象,然后就可以注释了
使用 js 语法注释(如{/注释内容/},//注释内容)
更多推荐
已为社区贡献1条内容
所有评论(0)