react 是一个用于构建用户界面的 javascript 库
它包括两个库:react.js
和 react-dom.js
react.js
:react 的核心库,提供了 react.js 的核心功能,比如创建 react 组件、组件的生命周期等react-dom.js
:提供了和浏览器交互的 dom 功能,比如:将组件渲染到页面上我们可以通过官方提供的 cdn 链接引入 react.j辩论主题s 和 react-dom.js 这两个库,从而在 html 中使用
react
是 react 库的入口。如果你通过使用<script>
标签的方式来加载 react,则可以通过react
全局变量对象来获得 react 的顶层 api如果你使用一个
<script>
标签引入 react-dom,所有的顶层 api 都能在全局reactdom
上调用
先来看看 react 和 reactdom 是什么:
react
reactdom
可以看到是两个对象,并且拥有很多方法,暂时不必深究每个方法
首先我们在 html 中引入:react.js react-dom.js
目前我们的代码写在 html 中,所以都通过 script 标签引入这两个库(后续不再赘述)
接着我们在界面上添加一个根元素:
如果我们想给这个根元素添加一段文字比如: hello,react! ,我们可以这么做:
现在用 react 的方式来将这个标题渲染到页面上
我们要用到 reactdom 提供的 api :reactdom.render()
事实上,render 方法接受 3 个参数:
要渲染的内容(颈椎病怎么治疗”hello, react!”)渲染内容的接收容器(此处的根元素)可选的回调函数(回调函数会在内容被渲染后执行)如果我们想要渲染的内容是一个标题 h1 或者一个段落 p ,甚至是更复杂的元素嵌套该怎么办呢
react 提供了创建并返回 react 元素的 api:
该方法接受 3 个参数:
type:指定元素类型,比如 ‘h1’、’p’props:可选参数,元素的属性值对对象,比如{classname: 'bg-red', id: 'title'}
创建元素并渲染到指定容器
渲染到根元素遥感专业大学排名:
注意
1.render 方法可以接受 createelement 创建的 react 元素作为渲染对象
2.render 方法属于 reactdom 对象
3.createelement 方法属于 react 对象
每个 react 元素都用 createelement 创建有点麻烦啊,有没有简单点的办法
事实上,对于:
可以这么写:
这种标签语法既不是字符串也不是 html
它被称为 jsx,是 javascript 的语法扩展
事实上,每个 jsx 元素一个语法糖,它们最终还是会调用react.createelement(component, props, ...children)
方法来创建 react 元素。不过我们写起来更加简单且直观
我们将所有 createelement 创建的元素改写成 jsx
得到如下完整 html 页面
在浏览器中打开,会发现页面上的元素并没有得到正确的渲染
并且控制台输出了错误:uncaught syntaxerror: unexpected token '<'
这是因为浏览器并不认识 jsx,jsx 只是 react 团队自己造的东西,我们需要把 jsx 转换成符月的诗句合 js 规范的语法,这样浏览器就认识了
这跟将 es6 语法转换成 es5 差不多
什么东西能把 es6 语法奉献的名言转换成 es5 ?
没错,babel
同样,借助 babel 我们可以将 jsx 转换成 js 语法
在页面中添加如下 script 标签
并将 script 标签(指包含 jsx 语法的 script)的 type 属性改为:text/babel
现在,元素可以正确的显示了
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注www.887551.com的更多内容!
本文发布于:2023-04-06 02:43:08,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/fcc19b7a40efe35b966da0f5bb68bb47.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:一起来学习React元素的创建和渲染.doc
本文 PDF 下载地址:一起来学习React元素的创建和渲染.pdf
留言与评论(共有 0 条评论) |