React知识点整理
面试题:三大框架中数据绑定实现上有何绑定?
一、概述:是Facebook维护的一个构建用户界面的JS库,核心很精简,但是生态圈扩展很大.
React:MVVM框架
React-Router:路由
Redux:状态管理
React-Native:移动APP开发
React VR/360:虚拟现实开发
二、两种使用方法:
1.使用script引入脚本 ------react.js react-dom.js babel.js
2.脚手架方式
三、React核心概念之一:JSX
概述:JavaScript XML,语法像XML,用于创建DOM对象
let el = document.createElement('div')
let el = React.createElement('div',{属性},'内容' )
let el = <div className="danger" innerHTML=" " innerText=" ">内容</div>
JSX基础语法:
1.不是字符串,不能加引号;本质是JS代码
2.语法是XML:有且只有一个根元素;元素必须闭合;属性必须用引号
3.标签可以是HTML标签(必须纯小写);也可以是自定义组件标签(必须大驼峰写法)
4.标签名本质都是JS对象,属性都是JSDOM对象属性,
如class需要写为className,for需要写为htmlFor,
也可以使用innerText/innerHTML
5.JSX中可以使用数据绑定表达式{ 表达式 }
1.内容绑定
<p>{表达式}</p>
算术运算
比较运算---不显示true/false
逻辑运算---不显示true/false
三目运算
调用函数:对象方法/全局函数/匿名函数
创建对象:创建的对象必须可以转为字符串
调用全局对象:JSON.stringify() ----React没有过滤器/管道
2.属性绑定
<p title={表达式}></p>
3.指令绑定
React中没有指令
1.选择渲染
<div>
{
(function(){
if(...) return <p>欢迎回来</p>
else return <a>请登录</a>
})()
|
</div>
2.列表渲染
let list =[10,20,50,30]
<ul>
list.map((e,i)=>{
return <li key={i}>{e}</li>
})
</ul>
4.事件绑定
5.双向数据绑定
四、React核心概念之二:组件
概述:是一段可重用的HTML片段
组件=模板 + 脚本数据 + 样式
两种形式的组件声明方法
1.function式组件(适合于简单组件)
function MyC01(){
return <div></div>
}
<MyC01></MyC01>
2.class式组件(适合于复杂组件)
class MyC02 extends React.Component{
render(){
return <div></div>
}
}
<MyC02></MyC02>
React知识点整理的更多相关文章
- web前端面试知识点整理
一.HTML5新特性 本地存储 webStorage websocket webworkers新增地理位置等API对css3的支持canvas多媒体标签新增表单元素类型结构标签:header nav ...
- React知识点总结1
最近打算把react知识点总结下: React特点 1.虚拟DOM 在内存中操作DOM,在内存中创建数据结构,只会更新有差异的地方 2.组件化 页面分成若干个组件,每个组件包含逻辑结构和样式 组件仅包 ...
- ACM个人零散知识点整理
ACM个人零散知识点整理 杂项: 1.输入输出外挂 //读入优化 int 整数 inline int read(){ int x=0,f=1; char ch=getchar(); while(ch& ...
- Android 零散知识点整理
Android 零散知识点整理 为什么Android的更新试图操作必须在主线程中进行? 这是因为Android系统中的视图组件并不是线程安全的.通常应该让主线程负责创建.显示和更新UI,启动子线程,停 ...
- vue前端面试题知识点整理
vue前端面试题知识点整理 1. 说一下Vue的双向绑定数据的原理 vue 实现数据双向绑定主要是:采用数据劫持结合发布者-订阅者模式的方式,通过 Object.defineProperty() 来劫 ...
- kafka知识点整理总结
kafka知识点整理总结 只不过是敷衍 2017-11-22 21:39:59 kafka知识点整理总结,以备不时之需. 为什么要使用消息系统: 解耦 并行 异步通信:想向队列中放入多少消息就放多少, ...
- JSP页面开发知识点整理
刚学JSP页面开发,把知识点整理一下. ----------------------------------------------------------------------- JSP语法htt ...
- JS知识点整理(二)
前言 这是对平时的一些读书笔记和理解进行整理的第二部分,第一部分请前往:JS知识点整理(一).本文包含一些易混淆.遗漏的知识点,也会配上一些例子,也许不是很完整,也许还会有点杂,但也许会有你需要的,后 ...
- css入门知识点整理
css入门知识点整理 不要嘲笑我这个蒟蒻..例子来源:w3school css其实就分为两个东西,一个是选择器,另外一个是声明.声明定义了某个对象的属性的值,这都是html的内容.重点要关注的是选择器 ...
随机推荐
- 广深小龙-基于unittest、pytest自动化测试框架之demo来学习啦!!!
基于unittest.pytest自动化测试框架之demo,赶紧用起来,一起学习吧! demo分为两个框架:①pytest ②unittest demo 中 包含 web.api 自动化测试框架 ...
- 用C++模拟蚊子的运动来检验概率论内容
背景:在一个很大的方形透明容器内,从某个位置放入适量的蚊子,等待几分钟后观察蚊子的分布. #include <iostream> #include <cstdlib> #inc ...
- 企业云桌面-03-安装第1个企业 CA-013-CA01
作者:学 无 止 境 QQ交流群:454544014 注意: <企业云桌面>系列博文是<企业云桌面规划.部署与运维实践指南>的基础部分,因为书中内容涉及非常多,非常全面,所以基 ...
- time wait 整理
目录 状态转换图 1.谁会进入time wait状态: 主动发起断开连接的一方调用close()函数发送FIN并进入FIN WAIT 1状态,当收到对面反馈的ack之后会进入FIN WAIT2状态.之 ...
- 《Python游戏编程快速上手》——1.3 如何使用本书
本节书摘来自异步社区<Python游戏编程快速上手>一书中的第1章,第1.3节,作者[美] Al Sweigart(斯维加特),李强 译,更多章节内容可以访问云栖社区"异步社区& ...
- STL--priority_queue--自定义数据类型
STL中priority_queue的声明模板有3个参数priority_queue<Type,Container,Functional>. 当使用的数据类型Type为自定义数据类型时有以 ...
- Hyperf基础教程
前提说明 本教程适用于新手.老手,也适用于任何操作系统,包括Windows.linux.MacOS 介绍 Hyperf 是基于 Swoole 4.4+ 实现的高性能.高灵活性的 PHP 协程框架,内置 ...
- Codeforce 1311A Add Odd or Subtract Even
Add Odd or Subtract Even time limit per test2 seconds memory limit per test256 megabytes inputstanda ...
- c++ concurrency
c++的并发涉及到这么几个东西: std::thread std::mutex std::lock_guard std::lock 参考资料: http://en.cppreference.com/w ...
- MAC使用vagrant搭建开发环境
公司的开发环境是这样的: Windows主机通过虚拟机安装CentOS.平时在Windows下编辑代码,然后跑到虚拟机里编译. 我自己有台MAC,本来准备直接在MAC上装开发环境的.基于以下两个原因放 ...