自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 Redux

1.单一数据源所有的state都放在一个状态管理器中进行管理。2.state是只读的唯一改变state的办法就是action,action是一个描述已发生事件的

2021-07-26 14:43:39 228

原创 axios文件上传进度

let config = { onUploadProgress: progressEvent => { let complete = (progressEvent.loaded / progressEvent.total).toFixed(2) * 100 console.log(complete) this.percentage = complete if (complete &...

2021-06-30 16:39:43 396 1

原创 js时间差计算

vargetPlanTime="2021-07-30"varplanTime=newDate(getPlanTime.replace(/-/g,'/')).getTime()varnowTime=newDate().getTime()varoutTime=planTime-nowTimevardays=parseInt(outTime/(1000*60*60*24))

2021-06-29 16:41:27 156

原创 Vue后台管理项目权限处理思路

1.不同角色权限的菜单栏渲染思路

2021-06-23 12:42:41 670

原创 egg.js后台流程记录2

1.安装数据库npm i --save egg-sequelize mysql2配置数据库'use strict';/** @type Egg.EggPlugin */module.exports = { // had enabled by egg // static: { // enable: true, // } cors: { enable: true, package: 'egg-cors', }, sequelize: {

2021-06-21 20:35:42 108

原创 egg.js后台流程记录1

1.路由传参 url中通过https:..../id的方式传递的数据可以在控制器中通过this.ctx.params.id获取, 通过?name=ls的方式传递的数据则是通过this.ctx.query.name获取, 通过this.ctx.status可以修改返回的状态码。2.关闭crsf开启跨域1.安装 npm i egg-cors --save生产依赖。2.在confug/plugin.js中配置插件'use strict';/** @type Egg.Egg...

2021-06-21 20:03:43 168

原创 vue双向数据绑定原理3

接上文, 我们现在为所有数据增加了setter和getter,为vue实例对象配置了数据代理,但我们还不能拿到页面上的dom元素,所以内部还需要一个编译模板的函数,

2021-06-17 13:17:29 133

原创 vue双向数据绑定原理2-前置知识点defineProperty

1.Object.defineProperty 基本使用方法:const obj = { name: 'cloudgaps', age: '18', info: { a:'1', b:'2' }}Object.defineProperty(obj,'name',{ enumerable:true, //当前属性允许被循环 枚举 configurable:true, //当前属性允许被配置 删除 get(){}, //取值拦截 set(){.

2021-06-17 02:04:22 131

原创 vue双向数据绑定原理1--前置知识点reduce、发布订阅模式

命令行输入 tsc --init 将会在目录下创建tsconfig.js的配置文件

2021-06-16 21:45:44 256

原创 云E办思路回顾

1.vue/cli创建项目。2.使用eslint、prettierrc格式化语法。3.写login页面,用element的form表单,注form表单的验证规则对应应该是和m

2021-06-16 14:57:59 1141

原创 vue eslint prettierrc简单配置

{ "compilerOptions": { /* Visit https://aka.ms/tsconfig.json to read more about this file */ /* Basic Options */ // "incremental": true, /* Enable incremental compilation */ "target": "es5", .

2021-06-15 18:27:22 1139

原创 2021-06-10 React项目笔记

TS泛型的使用及如果请求接口不时REST API,如何使用json-server自定义请求import React, { FormEvent } from 'react'const apiUrl = process.env.REACT_APP_API_URLexport const LoginScreen = () => { // 定义login函数 const login =(param:{username:string,password:string}) =>

2021-06-10 23:06:37 164 2

原创 用Custom Hook提取并复用组件代码

1.封装use'E'f'fe// 复用useEffectexport const useMount = (callback) => { useEffect(() => { callback() },[])}

2021-06-10 17:40:20 670

原创 React项目学习笔记2

import { useState, useEffect } from "react"export const SearchPanle = () => { // input const [param, setParam] = useState({ name: '', personId: '' }) // select const [users, setUsers] = useState([]) // list .

2021-06-10 00:00:43 195 2

原创 React项目笔记1-json-server的配置

1.使用配置简单的json-server来模拟数据的增删改查. 安装一开 yarn add json-server -D

2021-06-09 23:07:27 298

原创 es7、es8新增语法概述

1.includes方法 以前我们使用indexof来找到指定元素的下标,但indexof无法找到NaN,includes

2021-06-08 19:17:18 481

原创 es6学习笔记4-iterator迭代接口、for...of循环、Generator函数

1.es6提供了一种统一的接口机制,以便于遍历不同的数据结构,原有的数组和对象都内置了这个接口,在其原型对象__proto__上即可看到Symbol.iterator,而ES6新增的数据jie

2021-06-08 18:45:04 202 2

原创 es6学习笔记3-Reflect、static、Set、Map、Symbol

1.Reflect 一个静态对象,类似于Math,提供了一系列操作对象的方法,实际上是Proxy内部方法的默认实现,以前操作对象的方法不统一,Reflect

2021-06-08 16:03:27 159

原创 vue路由传参总结

一.Vue路由传参1.route-link路由导航 在to跳转链接后传递参数,获取时需要在路由配置path时注明,con

2021-06-07 23:43:04 274 2

原创 es6学习笔记2箭头函数、对象字面量、Proxy

1.箭头函数注意点:this指向问题,常规函数this指向其调用者,而箭头函数不指向其调用者,而是定义该函数当前作用域里面的this,应用场景,解决闭包时拿不到外层对象的情况

2021-06-07 22:51:34 114

原创 微信小程序微信支付流程

1.需要调用wx.login()的success回调拿到临时登录凭证code,拿到code后需要在后台用code取请求微信的auth.code2Session端口拿到openid用户的唯一标识

2021-06-07 17:20:53 869

原创 uniapp直播项目学习笔记5-主播直播间

1.跳转页面时将相同数据携带传过去,通过onload(options)即可拿到跳转过来携带的数据。//传递数据openLiveRoom(){ uni.navigateTo({ url: '../liveroom/liveroom?options='+JSON.stringify({ mode:this.mode, position:this.position, beauty:this.beauty, whiten

2021-06-07 00:54:49 205

原创 uniapp直播项目学习笔记4-推流功能

1.使用live-pusher创建推流组件

2021-06-06 23:10:13 1834

原创 uniapp直播项目学习笔记3-送礼物功能

1.使用插件popup可提供弹出层进行弹幕输入。2.弹幕滚动实习则可在scroll-view组件上定义scroll-into-view属性

2021-06-06 21:25:10 912

原创 uniapp直播项目学习笔记2

1.如何设置使live屏幕占满整个屏幕因为nvue是基于weex,页面布局默认是flex 所以我们给根view设置flex:1,然后使video组件的样式也是f'le'x

2021-06-06 17:47:08 650

原创 uniapp直播项目学习笔记1

/* 如果是nvue文件,因为不支持此CSS,故不进行编译 */ /* #ifndef APP-PLUS-NVUE */ @import url("common/icon.css") /* #endif */

2021-06-05 23:00:21 304

原创 react-redux

1.创建reducerexports.reducer=(state, action) => { return state}2.创建storeimport {createStore} from 'redux'import reducer from '../reducer/index'export default createStore(reducer)

2021-06-05 00:45:58 148 1

原创 redux

1.定义actionconst sendAction = () => { return { type: 'sendAction', value: '被传递的值' }}

2021-06-04 21:23:24 58

原创 react-hook的基本使用

1.useState 用来hook数据import {useState} from 'react'function App () { //const ['数据名称','操作数据的方法'] =useState(初始值) const [num, setNum] = useState(0) //定义给ui组件绑定的处理数据方法 const hanlde = () => { setNum(num + 1) }return( < onClick={.

2021-06-04 18:45:31 95

原创 ts学习随笔-更新中

public 未申明的话,默认是public,可以在任意地方使用和访问private 之内在父类中进行使用protected 只能在父类和继承的子类中访问

2021-06-03 20:52:03 73

原创 react路由的基本使用

导入路由需要的组件:import{BrowserRouter as Rourter, Route, Link } from 'react-router-dom'const APP = () => ( <div> <h1>路由</h1> </div>)

2021-06-02 23:57:20 118 2

原创 纯组件pureComponent

纯组件内部自动实现了钩子函数shouldComponentUpdate钩子,不需要手动进行比较原理:纯组件内部通过分别对比前后两次props和state的值,来决定是否chong'x

2021-06-02 23:38:32 164

原创 关于setState的一些说明

1.setState更新是异步更新的。2.使用如下语法可以拿到最新的state和propsthis.setState((state, props)=> {// 拿到最新的值后执行的操作})

2021-06-02 23:17:17 203

原创 react的render-porps和高阶组件

当不同组件有相似功能时,可以进行复用,其实本质是复用组件的state和操作state的方法,即组件逻辑,复用方式有如下两种:1.render-porps2.

2021-06-02 23:13:22 150

原创 react-Context

多层组件进行嵌套时,使用props多次传递数据将会很繁琐,而用reactContext可以直接指定某一层组件拿到最上层传递过来的值;1.调用reactContext的组件import { Provider, Consumer } = React.creatContext()2.使用<Provider> 组件 </Provider> 作为父节点 3.使用<Consumer> </Consumer> 包裹需要拿到数据的子节点:<Consu

2021-06-02 17:41:32 79

原创 数组的增删改查方法总结

增 前三种会对原数组产生影响,第四种不会产生影响。push() unshift

2021-05-30 15:28:30 1394

原创 axios简单配置及解决跨域

const instance = axios.create({ baseURL: 'https://some-domain.com/api/', timeout: 1000, headers: {'X-Custom-Header': 'foobar'}});

2021-05-28 23:33:41 21311 3

原创 webpack配置学习总结

一.文件出入口初始配置二.自动打包

2021-05-27 23:58:58 91

原创 es6对象新增方法

1.Obj.is() 之前es比较两个值是否相等,只有'=='和'==='两个运算符,使用'=='时会自动转换数据类型;而使用'==='时NaN不等于自身;Object.is就是部署这个算法的新方法。它用来比较两个值是否严格相 等,与严格比较运算符(===)的行为基本一致。2.Obj.assign() 用户目标对象的合并;第一个参数是目标对象,后面的参数是源对象,可以有多个; 注意点:1.assign()方法是浅拷贝。 2.对于嵌套的多个对象,遇到同名属性将会进行覆盖。3...

2021-05-26 21:05:00 261

原创 react的生命周期

组件的生命周期可分成三个状态:Mounting:已插入真实 DOM Updating:正在被重新渲染 Unmounting:已移出真实 DOM生命周期的方法有: componentWillMount在渲染前调用,在客户端也在服务端。(不常用) componentDidMount: 在第一次渲染后调用,只在客户端。之后组件已经生成了对应的DOM结构,可以通过this.getDOMNode()来进行访问。 如果你想和其他JavaScript框架一起使用,可以在这个方法中调用setT..

2021-05-26 15:08:16 63

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除