初探React之新发现

来源:互联网 发布:淘宝烽火体育店是假货 编辑:程序博客网 时间:2024/06/05 20:44

在新版本的React 16.0.0中React.DOM对象(传说中包含众多html元素的集合对象)已经不再存在了,当你打印的时候也会出现undefined,注意一下。

与ReactDOM也是一个对象,是用来再浏览器中进行渲染的;

尽管最新的版本中已经没有了React.DOM对象,但是却有React.createElement()函数,其实前者就是在后者的一种封装:

React.DOM.span(null,"hello,world")
就相当于:

React.createElement("span",null,"hello,world");
在上述的代码React.DOM.span()中,第一个参数指定该组件的任何属性(比如id,class等等,在这里是null对象),也就对应后者第二个参数。前者第二个参数来定义该组件的子元素(在这里是文本节点),也就对应着后者的第三个参数。

总之,React.createElement(),第一个参数来指定是哪中DOM节点(span,div,...),第二个参数用来指定该DOM节点的各种属性(style也是),第三个参数用来指定该DOM节点的子元素;记得可以嵌套的呢!

总结:

1.个人觉得学习react,核心之一的概念是组件,组件可以用来构建用户的界面(界面是由各种各样的组件以合适的方式进行组合构成的,包括嵌套等等),在构建实际的应用中,大都数的组件还是要根据业务的需求而定,这也导致了大多数的组件是自定义组件;

2.虽然React不用操作DOM,但是并不代表不能操作DOM,React允许你随时随地操作DOM,给你自由。

3.React.DOM在新版本的React 16.0.0中已经是undefined了,也就是说React对象不再有DOM属这个属性了请注意。

4.ReactDOM和React.DOM的区别:前者是在浏览器中渲染的一种途径(用来渲染的),后者是一个集合,包含有HTML元素的集合