REACT路由
摘要:现代的前端应用大多数是SPA(单页应用程序),也就是只有一个HTML页面的应用程序。因为它的用户体验更好、对服务器压力更小,所以更受欢迎。为了有效的使用单个页面来管理多页面的功能,前端路由应运而生。 前端路由功能:让用户从一个视图(组件)导航到另一个视图(组件) 前端路由是一套映射规则,在React
阅读全文
posted @
2021-04-30 11:47
Tsunami黄嵩粟
阅读(106)
推荐(0)
redux中间件
摘要:redux默认支持同步操作,异步操作怎么办?Action发出以后,Reducer立即算出 State,这叫做同步;Action 发出以后,过一段时间再执行 Reducer,这就是异步。怎么才能Reducer 在异步操作结束后自动执行呢?这就要用到新的工具:中间件。中间件有很多,这里使用一个 Redu
阅读全文
posted @
2021-04-30 11:41
Tsunami黄嵩粟
阅读(63)
推荐(0)
react-redux
摘要:网址:https://react-redux.js.org/ React-Redux是Redux的官方针对React开发的扩展库,默认没有在React项目中安装,需要手动来安装。react-redux是依赖于redux所以你必须安装redux 你可以理解为react-redux就是redux给我们提
阅读全文
posted @
2021-04-30 11:37
Tsunami黄嵩粟
阅读(60)
推荐(0)
状态管理(redux)
摘要:https://www.redux.org.cn/ 2013年 Facebook 提出了 Flux 架构的思想,引发了很多的实现。2015年,Redux 出现,将 Flux 与函数式编程结合一起,很短时间内就成为了最热门的前端架构。 简单说,如果你的UI层非常简单,没有很多互动,Redux 就是不必
阅读全文
posted @
2021-04-29 15:24
Tsunami黄嵩粟
阅读(183)
推荐(0)
memo(自带)
摘要:React.memo()是一个高阶函数,它与 React.PureComponent类似,但是一个函数组件而非一个类。如果你的组件在相同 props的情况下渲染相同的结果,那么你可以通过将其包装在 React.memo 中调用,以此通过记忆组件渲染结果的方式来提高组件的性能表现。这意味着在这种情况下
阅读全文
posted @
2021-04-29 15:06
Tsunami黄嵩粟
阅读(75)
推荐(0)
memoization(计算属性-记忆组件)
摘要:连续两次相同传参,第二次会直接返回上次的结果,每次传参不一样,就直接调用函数返回新的结果,会丢失之前的记录,并不是完全记忆,可以在它的参数中传入state数据从而实现了类似Vue中的计算属性功能 # 安装 npm i -S memoize-one # 引入 import memoizeOne fro
阅读全文
posted @
2021-04-29 15:04
Tsunami黄嵩粟
阅读(118)
推荐(0)
react 装饰器
摘要:使用装饰器定义 装饰器是一种函数,写成 @函数名。它可以放在类和类方法的定义前面。react脚手架创建的项目默认是不支持装饰器,需要手动安装相关模块和添加配置文件。 安装相关模块 npm i -D customize-cra react-app-rewired 修改package.json文件中sc
阅读全文
posted @
2021-04-29 11:49
Tsunami黄嵩粟
阅读(320)
推荐(0)
react 高阶函数
摘要:HOC(Higher Order Components)就是一个函数,传给它一个组件,它返回一个新的组件。 高阶组件:就相当于手机壳,通过包装组件,增强组件功能。 实现步骤: 首先创建一个函数 指定函数参数,参数应该以大写字母开头 在函数内部创建一个类组件,提供复用的状态逻辑代码并返回 在该组件中,
阅读全文
posted @
2021-04-28 16:44
Tsunami黄嵩粟
阅读(299)
推荐(0)
REACT 前端界面提交
摘要:在react项目中安装代理中间件 setupProxy.js文件 const { createProxyMiddleware: proxy } = require('http-proxy-middleware') module.exports = app => { app.use('/v1', pr
阅读全文
posted @
2021-04-28 16:21
Tsunami黄嵩粟
阅读(84)
推荐(0)
node写接受
摘要:选择数据库类型:mongodb 定义用户集合的字段(域): 用户名 密码 性别 爱好(多选) 简介 npm i -S express mongoose 在项目中连接mongodb服务 index.js文件 const mongoose = require('mongoose') const HOST
阅读全文
posted @
2021-04-28 15:45
Tsunami黄嵩粟
阅读(66)
推荐(0)
react的反向代理
摘要:在配置在src文件夹中setupProxy.js文件,并通过npm安装http-proxy-middleware,代理中间件模块 npm i -S http-proxy-middleware 配置反向代理 // 模块化环境是commonjs规范 webpack devServer配置环境 // 此文
阅读全文
posted @
2021-04-28 15:19
Tsunami黄嵩粟
阅读(213)
推荐(0)
react 网络请求 axios
摘要:react中通过npm来安装axios扩展 cnpm i -S axios 发起请求 import React, { Component } from 'react' import axios from 'axios' export default class App2 extends Compon
阅读全文
posted @
2021-04-28 15:17
Tsunami黄嵩粟
阅读(90)
推荐(0)
react祖先与子孙多层传值
摘要:先做数据源store.js文件 // 状态 store 统一数据源 import React, { createContext } from 'react' // Provider 发布消息 // Consumer 对于发布的消息进行消费(接受) let { Provider, Consumer }
阅读全文
posted @
2021-04-22 18:09
Tsunami黄嵩粟
阅读(216)
推荐(0)
react兄弟之间通信
摘要:写入组件 import React, { Component } from 'react'//下面二个就是兄弟关系的组件 import Cmp1 from '../Child/Cmp1' import Cmp2 from '../Child/Cmp2' import MyContext, { db
阅读全文
posted @
2021-04-22 18:00
Tsunami黄嵩粟
阅读(97)
推荐(0)
react跨组件通信
摘要:在react没有类似vue中的事件总线来解决这个问题,一是我们借助它们共同的父级组件通过代理的方式来实现,但过程会相当繁锁。react提供了Context来实现跨组件通信, 而不必显式地通过组件树的逐层传递 props。 import React, { Component, createContex
阅读全文
posted @
2021-04-22 17:49
Tsunami黄嵩粟
阅读(221)
推荐(0)
react组件通信 父组件与子组件互相通信
摘要:父组件将自己的状态传递给子组件,子组件当做属性来接收,当父组件更改自己状态的时候,子组件接收到的属性就会发生改变 父组件利用ref对子组件做标记,通过调用子组件的方法以更改子组件的状态,也可以调用子组件的方法 父组件将自己的某个方法传递给子组件,在方法里可以做任意操作,比如可以更改状态,子组件通过t
阅读全文
posted @
2021-04-22 17:16
Tsunami黄嵩粟
阅读(161)
推荐(0)
react减少组件渲染
摘要:当this.setState()修改了state中的数据后,当前组件将重新渲染,同时也会重新渲染子组件,但只会渲染当前组件子树(当前组件以其所有子组件) shouldComponentUpdate 当父组件更新会引起子组件也被更新,问题是此时子组件没有任何变化时也会重新渲染,我们就要避免不必要的重新
阅读全文
posted @
2021-04-16 17:48
Tsunami黄嵩粟
阅读(124)
推荐(0)
react生命周期比较常用的几个
摘要:import React, { Component } from 'react' // 只有在类组件中才有生命周期 export default class App extends Component { // 组件初始化 只执行一次 constructor(props) { super(props
阅读全文
posted @
2021-04-16 17:37
Tsunami黄嵩粟
阅读(77)
推荐(0)
react做购物车的功能
摘要:父组件 import React, { Component } from 'react' import Lists from '../components/Lists' export default class Cart extends Component { // 数据 状态 state = {
阅读全文
posted @
2021-04-16 17:31
Tsunami黄嵩粟
阅读(217)
推荐(0)
react表单处理 非受控组件
摘要:没有和state数据源进行关联的表单项,而是借助ref,使用元素DOM方式获取表单元素值 使用步骤 调用 React.createRef() 方法创建ref对象 将创建好的 ref 对象添加到文本框中 通过ref对象获取到文本框的值 class App extends React.Component
阅读全文
posted @
2021-04-16 17:18
Tsunami黄嵩粟
阅读(58)
推荐(0)