react查缺补漏01
1、描述对react理解?
react是一个用于构建用户界面的JS库。
react主要用于构建UI。很多人认为 React 是 MVC 中的 V(视图)。
react起源于:Facebook的内部项目,用来架设instagram网站,于2013年5月。
2、react特点?
生命式设计:react采用声明范式。
高效:react通过对DOM的模拟,最大限度减少DOM交互。
灵活:react可与已知的库和框架很好的配合。
JSX:JSX 是一个看起来很像 XML 的 JavaScript 语法扩展。
组件:通过react构建组件,使得代码更加容易得到复用,能够很好应用在大项目开发中。
单向页面的数据流:react实现了单向响应的数据流,从而减少了重复代码,这也是它为什么比传 统数据绑定更简单。
3、React中如何定义初始状态 ?
State和Props
State主要用于更新界面,组件的State属性在生命周期函数 getInitialState中初始化,当调用组件的this.setState改变state的时候,组件会重新渲染刷新。
Props主要用于组件之间传递数据,也就是标签的属性 这里的pname属性就可以在MyText中通过this.props.pname得到
4、JSX的有什么优点?
JSX 执行更快,因为它在编译为 JavaScript 代码后进行了优化。
它是类型安全的,在编译过程中就能发现错误。
使用 JSX 编写模板更加简单快速。
5、如何创建虚拟DOM、组件?
Var Com=React.createClass({render(){return ()}})
6、数组如何渲染到页面?
ReactDOM.render(
组件,
Domcoment.getElementById()
)
7、构建view视图用哪个函数?
render: function () {}
8、什么是组件?
通过React.creatClass({})定义一个组件的
可以通过this.props对象传递数据
9、通过什么方法定义一个组件?
Let Hello = react.createClass({
})
ReactDOM.render(Hello,document.getElementById(“app”)
10、class是js中的保留字,所以用什么方法创建一个类名?
class App extends Component{
}
export default App;
11、render函数中,如果多个元素嵌套时需要注意什么?
代码中嵌套多个HTML标签 ,需要使用一个标签元素包裹她
12、写事件是需要注意哪些问题?
map函数渲染的子元素绑定
事件冒泡的问题
页面传递参数问题
获取页面参数问题
13、什么是state?
是一个状态机,根据数据的改变更新视图
14、state怎么设置默认值?
getInitialState(){}
15、在哪个函数中修改状态?
setState((state)=>{})
16、props和state区别是什么?
Props是一个属性值,里面数据是不能改变的
State是一个状态机,根据数据的改变更改视图
17、么获取组件中定义的属性?
this.state
18、props验证器?
propTypes{
number:React.PropTypes.number.isRequired 判断是数字类型
arr:React.PropTypes.array.isRequired 判断是数组类型
function:React.PropTypes.func.isRequired 判断是function类型
bool:React.PropTypes.bool.isRequired 判断是布尔类型
object:React.PropTypes.object.isRequired 判断是对象类型
}
19、简述一下ref属性?
是一个非常特殊的属性,可以用来绑定到render()输出的任何组件上,允许引用render()返回的相应的支撑案例,用来确保任何时间总是拿到正确的实例;
20、Ref属性有什么优点?
可以用来绑定render输出的任何组件
21、Ref怎么获取支撑实例?
通过this.refs获取属性
22、组件的生命周期钩子函数?
ComponentWillMount 编译前。渲染前调用
componentDidMount 编译完成,渲染后调用
componentWillUpdate 组件state调用后 将要更新时,但还没有render调用
componentDidUpdate 在组件完成更新后立即被调用
componentWillUnmount 在组件从DOM中移除的时候被调用
componentWillReceiveProps 组件接受props之前
shouldComponentUpdate 组件state被调用 必须返回一个布尔值,true false
23、组件中的七个方法??
SetState 设置状态
ReplaceState 替换状态
setProps设置属性
replacerProps替换属性
forceUpdate 强制更新
findDOMNode获取DOM节点
isMounted 判断组件挂载状态
24、构建view视图用哪个函数?
render(){
function(){
}
}
25、怎么创建一个组建?
var Com=React.createClass{
、render(){
return()
}
}
作者:X秀秀
链接:https://www.jianshu.com/p/b8ab4f1293eb
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
react查缺补漏01的更多相关文章
- Android查缺补漏--BroadcastReceiver的类型与使用
Broadcast 是一种被用于应用内和应用之间传递信息的机制.一个广播可以对应多个接受者.一个完整的广播机制,需要具有以下三个要素: 发送广播的Broadcast 接受广播的BroadcastRec ...
- Android查缺补漏--Service和IntentService
Service的运行不依赖界面,即使程序被切换到后台,Service仍然能够保持正常运行.当某个应用程序进程被杀掉时,所有依赖于该进程的Service也会停止运行. Service 分为启动状态和绑定 ...
- Android查缺补漏--Activity生命周期和启动模式
一.生命周期 onCreate():启动Activity时,首次创建Activity时回调. onRestart():再次启动Activity时回调. onStart():首次启动Activity时在 ...
- Android查缺补漏(View篇)--在 Activity 的 onCreate() 方法中为什么获取 View 的宽和高为0?
在 Activity 的 onCreate() 方法中为什么获取 View 的宽和高为0 ? @Override protected void onCreate(Bundle savedInstanc ...
- Android查缺补漏--ContentProvider的使用
ContentProvider (内容提供者)是一种共享型组件,可以为系统内应用于与应用之间提供访问接口. ContentProvide要想正常工作需要三个关键点: ContentProvider:对 ...
- Android查缺补漏(View篇)--自定义 View 的基本流程
View是Android很重要的一部分,常用的View有Button.TextView.EditView.ListView.GridView.各种layout等等,开发者通过对这些View的各种组合以 ...
- Android查缺补漏(View篇)--自定义View利器Canvas和Paint详解
上篇文章介绍了自定义View的创建流程,从宏观上给出了一个自定义View的创建步骤,本篇是上一篇文章的延续,介绍了自定义View中两个必不可少的工具Canvas和Paint,从细节上更进一步的讲解自定 ...
- Android查缺补漏(View篇)--事件分发机制
事件分发机制是Android中非常重要的一个知识点,同时也是难点,相信到目前为止很多Android开发者对事件分发机制并没有一个非常系统的认识,当然也包括博主个人在内.可能在平时的开发工作中我们并没有 ...
- Android查缺补漏(View篇)--事件分发机制源码分析
在上一篇博文中分析了事件分发的流程及规则,本篇会从源码的角度更进一步理解事件分发机制的原理,如果对事件分发规则还不太清楚的童鞋,建议先看一下上一篇博文 <Android查缺补漏(View篇)-- ...
随机推荐
- summer_19th,Nov 2018
一.内存管理: Cpython解释器的垃圾回收机制 一个没有绑定任何变量名的值被称为垃圾,即该值的引用计数为零. 二.变量值的三个特点: id: 内存地址 type: 数据类型 值 总结:id相同,值 ...
- 顺序容器----顺序容器操作,vector对象如何增长,额外的string操作,容器适配器
一.顺序容器操作 1.向顺序容器添加元素 向顺序容器(array除外)添加元素的操作: 操作 说明 c.push_back(t) 在c的尾部创建一个值为t的元素.返回void c.emplace_ba ...
- JS--script标签注意细节
1)在使用<script>标签嵌入js代码时,记住不要在代码中的任何地方出现</script>字符串.例如: <script type="text/javasc ...
- ci框架memcached使用
首先第一步需要安装memcached扩展 安装方法这里就不叙述了 application/config/memcached.php配置 $config = array( 'default' => ...
- 基于bootstrap的后台左侧导航菜单和点击二级菜单刷新二级页面时候菜单展开显示当前菜单
本文使用的框架版本为: bootstrap3,Jquery2.1.0 (其他jquery可能会报错,菜单项不执行 效果如下: 1.在项目中引入框架: <link rel="style ...
- js MDN 查看
- Java反射《四》获取方法
package com.study.reflect; import java.lang.reflect.InvocationTargetException; import java.lang.refl ...
- mybatis实战教程
参考:http://blog.csdn.net/techbirds_bao/article/details/9233599/
- Java 从服务器下载文件到本地(页面、后台、配置都有)
先来看实现效果: 有一个链接如下: 点击链接下载文件: 第一种方法:Servlet实现 一.HTML页面部分: 1.HTML页面中的一个链接 <a id="downloadTempl ...
- Buffer与Cache区别 简要说明
Buffer – 缓冲区 写 用户写入数据存储区域 解决写入冲突 CPU-Memoury-Disk Cache – 缓存区 读 用户读取缓存数据使用 临时存储 Disk-memo ...