当前位置: 首页 > news >正文

dw网站设计模板某公司网站建设策划

dw网站设计模板,某公司网站建设策划,名聚优品 一家只做正品的网站,茂名网站建设技术托管React官方文档:https://react.docschina.org/ 说明 重要提示:本系列文章基础篇总结自尚硅谷课程,且采用类式写法!!最新的函数式组件写法见高级篇。 本系列文档旨在帮助vue同学更快速的学习react,如果你很…

React官方文档:https://react.docschina.org/

说明

重要提示:本系列文章基础篇总结自尚硅谷课程,且采用类式写法!!最新的函数式组件写法见高级篇。

本系列文档旨在帮助vue同学更快速的学习react,如果你很熟悉vue,且想更好地了解react,建议从类式组件学起!

学习本教程之前,最好具备vue的基础知识,明白虚拟DOM、jsx这些前置知识。接下来,我们通过一个简单的示例来展示react的使用。

注意:入门的学习不会使用脚手架,而是使用html非框架写法

入门示例

下面展示一个最简单的react示例

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>hello_react</title>
</head>
<body><!-- 准备好一个“容器” --><div id="test"></div><!-- 引入react核心库 --><script type="text/javascript" src="./js/react.development.js"></script><!-- 引入react-dom,用于支持react操作DOM --><script type="text/javascript" src="./js/react-dom.development.js"></script><!-- 引入babel,用于将jsx转为js --><script type="text/javascript" src="./js/babel.min.js"></script><script type="text/babel" > /* 此处一定要写babel *///1.创建虚拟DOMconst VDOM = <h1>Hello,React</h1> /* 此处一定不要写引号,因为不是字符串 *///2.渲染虚拟DOM到页面ReactDOM.render(VDOM,document.getElementById('test'))</script>
</body>
</html>

运行后的页面

引入的js文件作用

使用非框架的形式写react,我们需要引入三个js文件,如上面的示例:

  1. react.js: React核心库。
  2. react-dom.js: 提供操作DOM的React扩展库。
  3. babel.min.js: 解析JSX语法代码转为JS代码的库。

babel.js的作用

  1. 浏览器不能直接解析JSX代码, 需要babel转译为纯JS的代码才能运行
  2. 只要用了JSX,都要加上type=“text/babel” , 声明需要babel来处理

虚拟DOM

react采用虚拟DOM的形式渲染页面

使用JSX创建虚拟DOM

//1.创建虚拟DOM
const VDOM = <h1>Hello,React</h1>

渲染虚拟DOM(元素)

  1. 语法: ReactDOM.render(virtualDOM, containerDOM)
  2. 作用: 将虚拟DOM元素渲染到页面中的真实容器DOM中显示
  3. 参数说明
参数一: 纯js或jsx创建的虚拟dom对象
参数二: 用来包含虚拟DOM元素的真实dom元素对象(一般是一个div)
const VDOM = <h1>Hello,React</h1> /* 此处一定不要写引号,因为不是字符串 */
//2.渲染虚拟DOM到页面
ReactDOM.render(VDOM,document.getElementById('test'))

注意:react和react-dom的引入顺序不能写错!

创建虚拟DOM的两种方式

纯JS方式

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>2_使用js创建虚拟DOM</title>
</head>
<body><!-- 准备好一个“容器” --><div id="test"></div><!-- 引入react核心库 --><script type="text/javascript" src="../js/react.development.js"></script><!-- 引入react-dom,用于支持react操作DOM --><script type="text/javascript" src="../js/react-dom.development.js"></script><script type="text/javascript" > //1.创建虚拟DOM//const VDOM = React.createElement(标签名,标签属性,标签内容)const VDOM = React.createElement('h1',{id:'title'},React.createElement('span',{},'Hello,React'))//2.渲染虚拟DOM到页面ReactDOM.render(VDOM,document.getElementById('test'))</script>
</body>
</html>

注:不用将jsx转为js,所以不需要引入babel

不使用jsx创建项目,明显需要写很多代码,非常麻烦!

JSX方式

JSX方式就是js创建虚拟DOM的语法糖

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>1_使用jsx创建虚拟DOM</title>
</head>
<body><!-- 准备好一个“容器” --><div id="test"></div><!-- 引入react核心库 --><script type="text/javascript" src="../js/react.development.js"></script><!-- 引入react-dom,用于支持react操作DOM --><script type="text/javascript" src="../js/react-dom.development.js"></script><!-- 引入babel,用于将jsx转为js --><script type="text/javascript" src="../js/babel.min.js"></script><script type="text/babel" > /* 此处一定要写babel *///1.创建虚拟DOMconst VDOM = (  /* 此处一定不要写引号,因为不是字符串 */<h1 id="title"><span>Hello,React</span></h1>)//2.渲染虚拟DOM到页面ReactDOM.render(VDOM,document.getElementById('test'))</script>
</body>
</html>

注:当Vdom的内容是多行时,可以使用()jsx包裹起来,表示一个整体。

虚拟DOM与真实DOM对比

打印输出虚拟DOM和真实DOM进行比较

<body><!-- 准备好一个“容器” --><div id="test"></div><!-- 引入react核心库 --><script type="text/javascript" src="./js/react.development.js"></script><!-- 引入react-dom,用于支持react操作DOM --><script type="text/javascript" src="./js/react-dom.development.js"></script><!-- 引入babel,用于将jsx转为js --><script type="text/javascript" src="./js/babel.min.js"></script><script type="text/babel">/* 此处一定要写babel *///1.创建虚拟DOMconst VDOM = <h1>Hello,React</h1>; /* 此处一定不要写引号,因为不是字符串 *///2.渲染虚拟DOM到页面ReactDOM.render(VDOM, document.getElementById("test"));const TDOM = document.getElementById("test");console.log("虚拟DOM", VDOM);console.info("真实DOM", TDOM);</script></body>

console.log(“虚拟DOM”, VDOM);

看看真实DOM身上有哪些属性

  1. 虚拟DOM本质是Object类型的对象(一般对象)
  2. 虚拟DOM比较 “”,真实DOM比较 “”,因为虚拟DOMReact内部在用,无需真实DOM上那么多的属性
  3. 虚拟DOM最终会被React转化为真实DOM,呈现在页面上
http://www.yayakq.cn/news/670791/

相关文章:

  • 企业网站建设方案 功能规划thinkphp wordpress
  • 天河手机网站建设aplkey怎么注册域名
  • 建设网站编程语言wordpress登录后才能下载文件
  • 电商网站需要哪些备案wordpress 火
  • 商贸行业网站建设公司公司主页怎么制作
  • 我想建个网站怎么建青岛 html5flash设计开发|交互设计|网站建设
  • 参考消息官方网站阅读在线查询营业执照
  • 建站程序的作用清城网站seo
  • 织梦cms一键更新网站无法使用网站的内容规划怎么写
  • 淘宝网站建设策划书备案用的网站建设方案书
  • 泉州城乡住房建设厅网站wordpress视频压缩
  • 高校网站建设 调查管理系统的主要内容
  • 公司网站背景图网络平台建站
  • 南昌制作网站的公司成都旅游学院
  • 检测 网站优化网站开发视频教程迅雷下载
  • 阿里云简单网站建设企业移动网站建设
  • 翼城网站建设个人申请网站
  • 莱州网站建设长春h5建站模板
  • 网站建设维诺之星网页编辑用户信息原理
  • 采购网站官网模板网免费下载素材
  • html5的网站杭州高端网站开发
  • 网站开发专业是干嘛的如何在服务器上搭建网站
  • 网站 备案 时间100种迷你小手工
  • 小型企业门户网站源码短视频seo询盘获客系统软件
  • 企业网站推广的方法专业建设内容
  • 做网站网页尺寸是多少钱接网站建设的单子
  • 商务网站构建与维护财务公司管理系统
  • 什么网站可以做软件有哪些网络营销的基本流程
  • 可以显示一张图片的网站怎么搭建百度网盘网页版登录入口
  • 湟中网站建设宜兴百度推广