sxx的技术专栏 Nodejs and Javascript Coder

常用数组方法及src结构

2018-07-28
blockxia

阅读:


1. 项目开发中常用的数组方法, 和作用

push()/pop()/shift()/unshift()
forEach(item => {}): 遍历数组
filter(item => true/false): 遍历过滤返回一个子数组
map(item => newItem): 遍历返回一个对应的新数组
find(item => true/false): 遍历查找满足条件的第一个元素
findIndex(item => true/false): 遍历查找满足条件的第一个元素的下标
reduce((preTotal, item) => newTotal, initTotal): 遍历累计     [1, 3, 2, 7]

2. cookie的理解(分类, 创建, 保存, 使用)

cookie由key和value组成的文本小数据
分类: 会话cookie和持久化cookie
由服务器端创建: res.cookie(key, value, {maxAge: 1000})
由浏览器端保存: 浏览器接收到新的cookie会自动保存(内存/文件)
使用: 浏览器发送请求时自动携带对应的cookie, 服务器端通过req读取: req.cookies.key

3. 组件的二种分类

1). 路由组件和非路由组件
2). 容器组件和UI组件

4. src下的各个文件及其说明

api          ajax请求后台接口
assets        共用资源文件夹
	css
	imgages
components   UI组件
containers   容器组件
redux        redux相关
	actions.js
	action-types.js
	reducers.js
	store.js
util         工具
index.js     入口

5. 如何在react应用中发送ajax请求

1). 使用谁发请求?
	react库本身不可以
	axios: 封装的XMLHTTPRequest, promise风格, 浏览器端和node服务器端
	fetch: 较新的浏览器提供的新的ajax请求方式, 可以引入fetch.js来实现兼容处理
2). 在哪执行?
	初始显示: componentDidMount()
	交互: 事件回调函数/componentWillReceiveProps()

6. 路由的理解

1)什么是路由?
	a.一个路由就是一个映射关系(key:value)
	b.key为路由路径, value可能是function/component
2)路由分类
	a.后台路由: node服务器端路由, value是function, 用来处理客户端提交的请求并返回一个响应数据
	b.前台路由: 浏览器端路由, value是component, 当请求的是路由path时, 浏览器端前没有发送http请求, 但界面会更新显示对应的组件

7. 请求参数分类(GET请求)

1). query参数
	路由的path: /xxx
	请求的路径: /xxx?name=tom&age=18
	?后面的部分就是query参数: name=tom, age=18
2). param参数
	路由的path: /xxx/:name/:age
	请求的路径: /xxx/jack/18
	param参数: name=jack, age=18
	params.name, params.age # 8. 事件
1). 类型
	原生DOM事件
	自定义事件
2). 绑定事件监听
	事件名/类型
	事件回调函数: 接收数据并处理
3). 触发事件
	事件名
	数据

9. 下面给大家比较2种react中组件间通信方式

1). 方式一: 通过props传递
	通过props可以传递一般数据和函数数据,
	一般数据-->父组件向子组件
	函数数据-->子组件向父组件通信
	缺点: 只能一层一层传递/兄弟组件必须借助父组件
2). 方式二: 使用消息订阅(subscribe)-发布(publish)机制
	实现库: PubSubJS
	组件A: 发布消息(相当于触发事件)
	组件B: 订阅消息, 接收消息, 处理消息(相当于绑定事件监听)
	优点: 对组件关系没有限制

下一篇 Gulp介绍

Comments

Content