一、react简介

的语法(有值的表达式),其中的值可以是 数字、字符串、null、布尔、undefined 或者react元素(虚拟dom),如果是数组的话,则会自动的把数组中的元素展开。只会让前端越来越复杂,因此react就诞生了,react只关注与视图层,官方对react的定位是:一个快速构建前端视图的javaScript库。react中引入静态资源(css、图片),其实是webpack使用对应的loader加载了资源,并进行了打包。则以虚拟dom的方式解析,遇到。其虚拟dom的表示方法为。
分类: 编程语言 发布时间: 04-10 11:29 阅读次数: 0

二、react的组件-state-props-setState

组件中的状态(state)是和组件的视图对应的,状态决定了视图的呈现,每个组件都有自己独立的状态。组件的内部的状态是可以随意改变的,状态的改变意味着视图的呈现也发生了变化。组件中的属性(props)是来在组件调用的时候,从外部传入组件内部的。在组件内部属性是不能被改变的。属性的数据在一定程度上也决定了视图的呈现。想要改变组件内部的状态,从而让视图也跟着更新需要执行。
分类: 编程语言 发布时间: 04-10 11:29 阅读次数: 0

三、react组件的生命周期

销毁期指的是组件被卸载的时候,此时有一个声明周期函数会执行:(一般这个生命周期函数中可以做一些清除的工作)灵活掌握react组件的生命周期以及组件的活动过程。中去调用请求接口,也不要去写太多的逻辑、不要调用。这些生命周期中初始化调用请求接口。能够灵活使用react的生命周期。每个生命周期接收的参数。
分类: 编程语言 发布时间: 04-10 11:29 阅读次数: 0

四、ref与DOM-findDomNode-unmountComponentAtNode

理解react的框架使用中,真实dom存在的意义。灵活掌握并能够合理使用操作真实dom的方法。使用真实dom和使用虚拟dom的场景。
分类: 编程语言 发布时间: 04-10 11:29 阅读次数: 0

五、事件系统-原生事件-react中的合成事件-详解事件的冒泡和捕获机制

react中的合成事件就是利用了事件传递的这种特性,所有的元素事件触发,肯定会传递到document身上,react中为了节省性能,我们写在虚拟dom中的事件,其实在编译的时候,都被挂载到了document这个元素上,只是react自己实现了一套事件系统,可以记录真正触发的元素是那个,以及其他相关的信息。而所谓的事件传递指的是当在A元素上触发某一事件的时候,B元素如果满足了和A元素一定的关系的话,那么B元素上也可能触发改事件(即使B元素未添加该事件);这个元素的话,哪些元素会触发事件,且顺序是怎样的?
分类: 编程语言 发布时间: 04-10 11:29 阅读次数: 0

Android 冷启动白屏解决方案

启动页白屏解决方案
分类: 移动开发 发布时间: 04-10 11:29 阅读次数: 0

六、react组件通信-父子组件通信-子父组件通信-跨级组件的传参方式-context方式的传参

1.组件和组件之间的关系 (1)父子 props (2)子父 回调函数 context (3)嵌套 props context (4)并列 redux mobx(公共数据管理仓库) 全局变量 (暂时不讲)2.在根组件(需要提供数据或方法的组件)套上一个Provider, 把值赋给属性value 在接收数据或函数方法的组件上套上一个Consumer。子向父传值 是父组件向子组件传一个函数名字 子组件去调用,在调用函数时通过参数传给父组件。4.嵌套传值 嵌套组件传值和父子传值都可用 context。
分类: 编程语言 发布时间: 04-10 11:29 阅读次数: 0

七、组件的高级用法-组件的组合(children的用法)-高阶组件-封装组件

在组件传值时,不光可以传递变量,函数,也可以传递标签,通常我们使用两种方式传递标签: 1 通过属性传递标签,子组件接收时使用this.props。简而言之,就是受到状态state控制的表单,表单的值改变则state值也改变,受控组件必须要搭配onchange方法,否则不能使用。2 将组件写成双标签,包住要传递的标签,子组件接收时使用this.props.children。高阶函数是一个函数,它接收函数作为参数或将函数作为输出返回。高阶组件是一个组件,它接收组件作为参数,并将组件作为输出返回。
分类: 编程语言 发布时间: 04-10 11:29 阅读次数: 0

八、什么是纯函数-组件的性能优化-pureComponent-组件性能优化的原理

foo 函数不是一个纯函数,因为它返回的结果依赖于外部变量 a,我们在不知道 a 的值的情况下,并不能保证 foo(2) 的返回值是 3。虽然 foo 函数的代码实现并没有变化,传入的参数也没有变化,但它的返回值却是不可预料的,现在 foo(2) 是 3,可能过了一会就是 4 了,因为 a 可能发生了变化变成了 2。现在 foo 的返回结果只依赖于它的参数 x 和 b,foo(1, 2) 永远是 3。今天是 3,明天也是 3,在服务器跑是 3,在客户端跑也 3,不管你外部发生了什么变化,foo(1,
分类: 编程语言 发布时间: 04-10 11:29 阅读次数: 0

九、propTypes验证

理解类型验证的必要性灵活掌握类型验证的使用安装引入和使用基本的使用格式如下:基本的类型验证如下还有一些辅助方法instanceOf 使用形式如下: 这个方法表示验证类型必须是某个类的实例,上述代码表示传入的参数必须是Array的实例;一般这个方法会接收一个类;oneOf 使用形式如下: 这个方法用来规定传入的属性必须是给定值中的一个,上述代码表示传入的值只能是’news’或者’photos’,一般该方法接收一个数组,数组的元素则为供选择的值oneOfType 使用形式如下 这个方法表示
分类: 编程语言 发布时间: 04-10 11:29 阅读次数: 0

Android run按钮不可点击,编译项目报错Caused by: java.lang.NoClassDefFoundError

run按钮不可点击 android studio不可正常编译项目
分类: 移动开发 发布时间: 04-10 11:29 阅读次数: 0

十、children的深入用法-React.Children对象上的方法

上图中我们看到了,我们之前学过的React.createElement方法,现在大家发现jsx的内容,全部都体现在了该方法上;那么React.createElement其实是有三个参数的,第三个参数被称之为children,也就是子元素;看下图: 这个时候,第三个参数也体现出来了; 那么我们可以发现children其实也是外部传递的数据,只不过传递的是react元素。那么我们在组件的内部应该用this.props.children去接收这些元素; 在组件的内部:我们已经知道在组件的内部如何获取到ch
分类: 编程语言 发布时间: 04-10 11:28 阅读次数: 0

Android RecyclerView使用及出现问题汇总(附代码)

RecRecyclerViyclerVie基本使用及使用过程中出现问题(附代码)
分类: 移动开发 发布时间: 04-10 11:28 阅读次数: 0

什么是客户端证书?(ssl证书)

客户端证书是相对于服务器端而言,用于证明客户端用户身份的数字证书,使客户端用户在与服务器端通信时可以证明其真实身份,也可对电子邮件进行数字签名及加密。适用于各种涉密系统、网上应用和网络资源的客户端强身份认证。这种基于身份认证的客户端证书允许用户无需输入传统的用户名和密码即可登录各种系统,所以这也是一种无密码身份认证方法。那么,为什么使用客户端证书,使用证书身份认证有哪些好处?
分类: 编程语言 发布时间: 04-10 11:28 阅读次数: 0

前端常用的地图框架(webGIS)

是较为学院派的前端地图库,它是ArcGIS开发套件中的一部分,和桌面端和服务器端ArcGIS软件有较好的协作。是目前最新潮的前端地图库,它的矢量压缩、动态样式和三维性能令人印象深刻。它本身是开源的,但一般依赖于Mapbox公司提供的底图服务。是三维地图,它们依赖百度地图提供的后台服务。是三维地理可视化的常用库,在大尺度的可视化(地形、建筑、地球)中十分常用。也是常用的前端地图库,它开源,相比于Leaflet更加复杂和完备。是最著名的前端地图可视化库,它开源、体积小、结构清晰、简单易用。在境外有更好的数据。
分类: 编程语言 发布时间: 04-10 11:28 阅读次数: 0

Android 自定义组合控件(页面顶部)

自定义组合控件 页面顶部抽取
分类: 移动开发 发布时间: 04-10 11:28 阅读次数: 0

Android 工程中libs下引入第三方jar包详解

项目导入第三方包 lib下引入jar arr包
分类: 移动开发 发布时间: 04-10 11:28 阅读次数: 0

Android 帧布局中控制组件位置

帧布局中控制组件位置 点击没反应事件冲突
分类: 移动开发 发布时间: 04-10 11:28 阅读次数: 0

Android 控件描边、加阴影

android 控件设置边框描边、加阴影
分类: 移动开发 发布时间: 04-10 11:27 阅读次数: 0

vscode vue settings.json 代码格式化配置!

{ // 換行 "editor.wordWrap": "on", // 代码缩进修改成2个空格 "editor.tabSize": 4, // 不檢查縮進,保存后統一按設置項來設置 "editor.detectIndentation": false, //保存的时候自动格式化 "editor.formatOnSave": true,...
分类: 移动开发 发布时间: 04-10 11:27 阅读次数: 0