react快速上手一(使用js语法,创建虚拟DOM元素)
1.装包,引包
首先需要安装两个包 react ,react-dom
cnpm i react react-dom
介绍下这两个包:
react:专门用来创建React组件,组件生命周期等这些东西。
react-dom:里面主要封装了和Dom操作相关的包(例如:要把组件渲染到页面上)
装了之后就引包使用了
import React from ‘react’
import ReactDom from ‘react-dom’
2.创建dom对象
在react中,如果要创建DOM元素了,只能使用React提供的JS API来创建(vue是直接创建.vue文件手写HTML元素来创建的)
var myDiv = React.createElement('div' , { title : 'wo shi div' , id = 'myDiv'} , '这是一个div' )
React.createElement()方法:用于创建虚拟DOM对象,他接收3个及以上的参数。
参数1:表示要创建的元素类型,参数是个字符串类型(在此我理解为标签名字如:‘div’ ,‘p’) 参数2:表示创建的元素含有哪些属性,参数是个对象(例如有id,class,title属性)
参数3:表示当前创建元素的子节点,可以是文本内容,也可以是子标签,从第三个参数的位置开始,后面可以放好多的虚拟DOM对象(嵌套元素)
创建后的效果:
<div title="wo shi div" id="myDiv">这是一个div</div>
3.渲染到页面
ReactDom.render(myDiv , document.getElementById('app'))
ReactDom.render()用法:
ReactDom.render(‘要渲染的虚拟DOM元素’ , '要渲染到页面上的那个位置中')
注意:
ReactDom.render()方法的第二个参数,和vue不一样,React中不接受字符串“#app”,需要传递一个原生的DOM对象“document.getElementById('app')”。
react快速上手一(使用js语法,创建虚拟DOM元素)的更多相关文章
- React:快速上手(1)——基础知识
React:快速上手(1)——基础知识 React(有时叫React.js或ReactJS)是一个为数据提供渲染为HTML视图的开源JavaScript库,用于构建用户界面. JSX.元素及渲染 1. ...
- React:快速上手(7)——使用中间件实现异步操作
React:快速上手(7)——使用中间件实现异步操作 本文参考链接:Stack Overflow redux-thunk 我们使用store.dispath进行派发时,只能传递一个普通对象进去,如下: ...
- React:快速上手(6)——掌握React Router
React:快速上手(6)——掌握React Router 引入Router 安装 npm install react-router-dom 基础组件 React Router中有三种类型的组件:路由 ...
- React:快速上手(4)——掌握Redux(1)
React:快速上手(4)——掌握Redux 引入Redux 混乱的state管理 随着 JavaScript 单页应用开发日趋复杂,JavaScript 需要管理比任何时候都要多的 state (状 ...
- React:快速上手(3)——列表渲染
React:快速上手(3)——列表渲染 使用map循环数组 了解一些ES6 ES6, 全称 ECMAScript 6.0 ,是 JaveScript 的下一个版本标准,2015.06 发版.ES6 主 ...
- 官方 React 快速上手脚手架 create-react-app
此文简单讲解了官方 React 快速上手脚手架的安装与介绍. 1. React 快速上手脚手架 create-react-app 为了快速地进行构建使用 React 的项目,FaceBook 官方发布 ...
- React:快速上手(5)——掌握Redux(2)
React:快速上手(5)——掌握Redux(2) 本文部分内容参考阮一峰的Redux教程. React-Redux原理 React-Redux运行机制 我觉得这张图清楚地描述React-Redux的 ...
- React:快速上手(2)——组件通信
React:快速上手(2)——组件通信 向父组件传递数据 父组件可以通过设置子组件的props属性进行向子组件传值,同时也可以传递一个回调函数,来获取到子组件内部的数据. 效果演示 子组件是输入框,父 ...
- React:快速上手(8)——前后端分离的跨域访问与会话保持
React:快速上手(8)——前后端分离的跨域访问与会话保持 跨域访问 跨域是指从一个域名的网页去请求另一个域名的资源.比如从http://www.baidu.com/ 页面去请求http://www ...
随机推荐
- RTM of ML.NET
Announcing ML.NET 1.0
- LVS+Keepalived小试牛刀
一.ipvsadm命令1.基本命令操作1.1)添加规则 ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p timeout] [-M netm ...
- golang web框架设计7:整合框架
把前面写好的路由器,控制器,日志,都整合在一起 全局变量和初始化 定义一些框架的全局变量 var ( BeeApp *App AppName string AppPath string StaticD ...
- EuRoc V203数据集的坑
EuRoc数据集时间戳问题 以前听别人说过V203序列有问题,今儿仔细看了才发现EuRoc的V203数据集中的左右相机 照片数量不相等,很僵硬,cam0存在大量丢帧,之前一直用单目数据,没什么感觉.. ...
- 什么是UEFI
UEFI是什么?也许我们大多数用户对这个概念很模糊.uefi可以做什么,有什么具体的应用?虽然不知道具体是做什么的,但是我们经常会在BIOS设置中发现UEFI的踪迹.因为现在越来越多的电脑已经使用了U ...
- Docker跨主机网络实践
Docker使用中网络管理是最麻烦的,在项目初始化前期就需要进行合理的规划,如果在比较理想的单主机的网络通信是比较简单的,但如果涉及到跨主机的网络就需要使用docker自带的overlay netwo ...
- AnroidStudio gradle版本和android插件的版本依赖
- 后端根据查询条件生成excel文件返回给前端,vue进行下载
一.HTML代码 <el-col :xs="2" :md="2" :sm="3"> <el-button type=&qu ...
- spring boot工程如何启用 热启动功能
1.在pom.xml里面添加一个依赖即可 关键代码 <dependency> <groupId>org.springframework.boot</groupId> ...
- 洛谷 题解 P1133 【教主的花园】
$n<=10^5 $ O(n)算法 状态 dp[i][j][k]表示在第i个位置,种j*10的高度的树,且这棵树是否比相邻两棵树高 转移 dp[i][1][0]=max(dp[i-1][2][1 ...