自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 react之 useImmer

useImmer可以代替 useState来更新数组或对象。

2024-03-14 16:56:30 438

原创 将 node 高版本替换为低版本

【代码】将 node 高版本替换为低版本。

2024-03-13 16:27:21 247

原创 git ssh建立连接

2. 打开文件,如果找不到文件,可以在文件夹根目录下输入文件路径(截止到文件夹,不包含文件名)回车来访问。3. 打开 id_rsa.pub 文件,复制里面的文本内容,粘贴到仓库的设置中的ssh keys 即可。直到出现 生成的 ssh 文件路径。

2024-03-13 16:12:26 259

原创 js事件循环机制 宏任务微任务执行时机

js事件循环机制

2024-02-04 14:56:02 417

原创 packjson中依赖版本号说明

推荐使用~ 更新修订版本,比较稳定。

2024-02-02 09:47:47 153

原创 localStorage,sessionStorage 和 cookie区别

【代码】localStorage,sessionStorage 和 cookie区别。

2024-02-01 16:06:08 412 1

原创 Homebrew安装

来源:https://gitee.com/cunkai/HomebrewCN。

2023-10-28 17:44:25 86

原创 webpack使用

1. 安装webpack,webpack-cli只安装webpack,运行webpack -v 提醒我需要安装webpack-clisudo cnpm install webpack -gsudo cnpm install webpack-cli -gwebpack -v # webpack: 5.72.0 webpack-cli: 4.9.2

2022-04-15 15:36:49 901

原创 react 打包时取消console和debugger

1. 安装uglifyjs-webpack-plugin# 使用--save安装,可能会提示webpack版本问题。cnpm install uglifyjs-webpack-plugin --save-dev2. 在config.js中配置chainWebpack// 引入const UglifyJsPlugin = require('uglifyjs-webpack-plugin');export default defineConfig({ ... chainWebpack:

2021-12-21 14:37:26 917

原创 使用verdaccio搭建私有npm库

1. 全局安装verdaccionpm install verdaccio -g2. 启动verdaccio此时,verdaccio已经启动,http://localhost:4873/ 已经可以访问,但是只能在本机访问。可以修改配置文件,通过访问ip的方式来访问。在 .config/verdaccio/config.yaml 文件末尾添加listen: 0.0.0.0:4873重新运行启动命令,便可以通过http://ip:4873的方式访问了。3. 使用pm2来启动verdacc

2021-12-02 17:32:51 1452

原创 正则表达式及常用的正则验证

字符描述^匹配开头$匹配结尾\将下一个字符标记为特殊字符*匹配0次或多次,相当于{0,}?匹配0次或1次,相当于{0,1}+匹配1次或多次,相当于{1,}{n}匹配n次{n,}至少匹配n次{n,m}至少匹配n次,最多匹配m次{n}匹配n次字符描述?跟在其他限制符后,表示非贪婪匹配,默认贪婪模式。例如对于字符串"ooo",o+?匹配到"o",o+匹配到"ooo".匹配除换行符外的...

2021-11-29 17:11:05 208

原创 ant-pro使用

取消默认登录页面1. src -> app.jsx 注释 getInitialState 函数下的 fetchUserInfo 方法2. src -> app.jsx 注释 layout 函数下的 onPageChange 方法

2021-11-23 10:42:06 1424

原创 git 命令

git 命令关于 tag1. 本地创建 taggit tag project_v1.0     无注释git tag -a project_v1 -m "项目1.0"     含注释2. 推送 tag 至远程git push origin tag project_v13.删除 taggit tag -d project_v1git push origin :refs/tags/project_v1关于 分支1.

2021-11-23 10:37:13 180

原创 将已有react+umi项目替换为MFSU启动方式

使用npm start启动项目时耗时长,使用umi dev可以加快启动速度,第一次使用会比较慢,之后启动时间在2s左右,热更新平均 600ms 左右MFSU issue地址 https://github.com/umijs/umi/issues/6766操作前先检查是否全局安装umiumi -v我的项目虽然使用了umi.js,但是没有全局安装。后面运行 umi dev时报错 umi: command not found。全局安装 uminpm install -g umi // win.

2021-07-30 11:06:43 2104

原创 react + ant-ProTable 表格跨页选择

protable 选择行设计到的api有onSelect - 单行选择onSelectMultiple - 多行选择(使用shift键可以触发多选)onSelectAll - 全选全不选onChange - 每次选择行都会触发onChange,并且是后执行。跨页选择逻辑cancleRowKeys - 取消选择的行mySelectedRowKeys - 选中的行选择行时,判断是选择还是取消选择,如果是取消选择,将行key存储至 cancleRowKeys 中在onChange 方法中

2021-07-02 10:40:02 1520

原创 excel 常用公式

身份证号提取性别=IF(MOD(MID(F1576,17,1),2),“男”,“女”)身份证号提取年龄=YEAR(TODAY())-MID(F3,7,4)查询重复身份证号=IF(SUMPRODUCT(–(F$1:F$1997=F1589))>1,“重复”,"")查询数字的小数位数,整数计算结果是-1=len(A1)-len(int(A1))-1...

2021-06-18 10:18:05 575

原创 vue3 teleport传送门

vue3 新增的teleport 可以实现将组件内的元素移动到组件外的dom节点内。to 指向渲染组件的dom // index.html<body> <div id="app"></div> <div id="modal"></div></body>// modalComp.vue<div> <div class="mask"></div> <teleport

2021-06-17 10:12:46 398

原创 vue 为路径设置别名

vue-cli3在vue.config.js文件中配置路径别名const path = require("path");const resolve = (dir) => { return path.join(__dirname, dir);};module.exports = { chainWebpack: config => { config.resolve.alias.set('@',resolve('src')) }};...

2021-06-16 17:16:31 102

原创 dom元素尺寸和位置

一、尺寸clientWidth /clientHeight 包含元素内容 + padding + border clientWidth 270 , clientHeight 100scrollWidth /scrollHeight 包含元素内容 + padding, scrollWidth 270 , scrollHeight 100 . 如果内容溢出该元素,并且存在滚动条,值为 真实内容高度(含溢出高度) +...

2021-05-26 11:23:45 93

原创 生成uuid

// 生成uuidexport function getUUID() { return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => { return (c === 'x' ? (Math.random() * 16 | 0) : ('r&0x3' | '0x8')).toString(16) })}

2021-05-19 11:04:53 167

原创 vue 路由传参的3种方式

1. 路由配置// 页面路由格式 /detail/1// 页面刷新后路由参数依然在。// 路由定义{ name:'Detail', path:'/detail/:id', component:Detail}// 页面跳转this.$router.push({ path:'/detail/1',})// 或者同方式2this.$router.push({ name:'Detail', params:{id:1}})// Deta

2021-05-17 17:32:14 198

原创 vue slot插槽

1. 匿名插槽<!-- parent --><Children> <h4>标题内容</h4><!-- 匿名插槽默认用default做参数,v-slot仅能用于template标签 <template v-slot:default> <h4>标题内容</h4> </template> --></Children><!-- chil

2021-05-08 15:26:38 119

原创 vue 组件通信

1. 父子组件通信1.1 父传子值props// parent<Children msg="success" />// childrenprops: { msg: String}1.2 子传父值,父改子值$refs// parent<Children ref="cld" />mounted(){ console.log(this.$refs.cld.content) this.$refs.cld.content='我是父

2021-05-07 11:14:43 82

原创 excel 从身份证号中提取性别,年龄

身份证号提取性别=IF(MOD(MID(F1576,17,1),2),"男","女")身份证号提取年龄=YEAR(TODAY())-MID(F1576,7,4)

2021-04-30 14:29:18 6779

原创 mac 常用快捷键

显示/隐藏系统文件 shfit + command + . 聚焦搜索 command + 空格键 截屏 shfit + command + 4 录屏 shfit + command + 5 重做操作(撤销后恢复)shfit + command + Z...

2021-04-19 09:09:33 316

原创 常用的正则验证

// 邮箱const isEmail = (value) => { return /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(s)}// 手机号码const isMobile = (value) => { return /^1[0-9]{10}$/.test(value)}// 电话号码const isPhone = (value) => { return .

2021-04-16 09:51:22 113

原创 react+antpro 打包后生成大体积文件之优化

概述使用antpro 框架做了一个react 项目,打包后umi.js文件体积差不多有1.4M。后来使用gzip压缩方式,将其压缩到421kb,大大缩短加载时间。查看项目文件大小可以通过两种方式,查看具体产生了哪些大文件。1. 使用开发者工具的Network,可以查看浏览器加载了哪些文件及用时。2. 使用npm 自带的分析工具,运行命令后后自动弹出分析结果网页。npm run analyzeStat -- 转换前的体积Parsed -- 最终打包体积Gzippe

2021-04-09 17:59:58 1877

原创 antd的ProTable 组件如何给搜索框手动赋值

1.实现如图效果。当路由中包含classesId参数时,表格默认查询该分类下的数据,使用的ProTable组件。配置列项时,在所属分类项中添加initialValue,并复制当前路由classesId参数。import { history } from 'umi';const classesId = history.location?.query?.classesId;const columns = [ ..., { title: '所属分类', d

2021-04-08 11:25:45 2015 4

原创 react 传递参数给子路由

import React, { useState } from 'react';const Home = props =>{ const [state, handleState] = useState(null) const changeState = (value) => { handleState(value) } // 通过React.cloneElement,将数据或方法以对象形式传递 React.Children.ma.

2021-04-07 11:18:18 510 2

原创 Less的遍历循环写法

1.html<ul> <li>第一条数据</li> <li>第二条数据</li> <li>第三条数据</li> <li>第四条数据</li> </ul> 2.less// 定义颜色数组@colorArr: #37a2da, #32c5e9, #67e0e3, #9fe6b8;// 定义循环最大值,此处使用颜色数组的长度@len: len

2020-11-19 10:54:43 7977

原创 取消react+dva创建项目路由中的#

修改项目文件夹中index.js文件 src--index.jsimport createHistory from 'history/createBrowserHistory';const app = dva( { history: createHistory()});文件全部内容

2020-08-06 10:26:40 207

转载 vue 引入本地音频文件

在需要引入音频的vue文件中使用 require 的方式引入,指定使用 file-loade示例如下const sounds = require("file-loader!../assets/sounds/sounds.mp3");

2020-04-03 12:26:42 5118

原创 vue 子组件直接修改父组件的值

子组件:this.$vnode.context.parentData = '123'

2019-12-23 21:07:48 395

原创 解决上传图片自动旋转的问题以及对图片进行压缩上传

1. 关于图片自动旋转原因在使用PS或者其他软件旋转图片时,图片旋转了,但Orientation不会改变,由于我们使用的图片预览器能够预处理图片,使其看起来与旋转后一致,但上传图片时,浏览器并不会预处理。所以导致图片旋转。EXIF中,包含一个Orientation参数,用来记录拍摄照片时的方向,其中1是正常。2. 解决旋转问题,需引入exif.js文件 下载链接http:/...

2019-11-07 19:43:49 31333

原创 mui 下拉刷新的页面,第一次不会自动刷新获取数值的问题

修改mui初始化,将上面代码替换为下面代码//mui初始化mui.init({ pullRefresh: { container: '#pullrefresh', down: { auto: true, style:'circle', contentdown: '', callback: scope.pulldownRefresh }, up: {...

2019-10-19 14:20:11 280

原创 命令行工具基础命令

打开命令窗口 Windows+R,输入cmd,回车 在当前文件夹下打开工具 shift+鼠标右键,选择在此处打开命令窗口 回到当前路径的上一级 cd.. 来到当前路径的下级文件夹 cd demo\js\main.js 去其它磁盘 G: (磁盘字母加冒号) 列出当前文件夹下的目录 dir 创建新文件 ...

2019-07-10 09:49:42 200

原创 vue webstorm 活动模板快速初始化

新建vue文件的结构几乎都一样,但每次都要复制粘贴也很麻烦,可以使用活动模板设置一下,快速初始化。打开文件 ---> 设置 ---> 编辑器 ---> 活动模板 ---> 点击右侧加号 ---> 1.Live Template缩写处写上新建模板的快捷符号,描述随便写,模板文本处编辑好vue的模板内容,然后点击下方蓝色文字“defined”(因为我已经设置...

2019-04-23 15:43:05 600

原创 vue 安装使用font-awesome字体

1.npm安装font-awesomecnpm i font-awesome --save-dev2.main.js引入font-awesomeimport 'font-awesome/css/font-awesome.css'3.index.html引入css标签<link href="https://cdn.bootcss.com/font-awesome/5....

2019-04-21 10:36:31 1276 1

原创 清除IE浏览器中input元素的删除和查看密码图标,清理谷歌自动填充颜色

IE浏览器中,type=“text”的input元素中有输入时会出现清除图标,type=“password”的input元素中有输入时会出现眼睛图标。添加下面的样式可以去除默认图标:::-ms-clear, ::-ms-reveal{ display: none;}...

2019-03-06 16:07:47 632

原创 placeholder样式修改,多浏览器兼容

1、Chrome、Safari 、Opera浏览器input::-webkit-input-placeholder{color:#fff;}2、火狐浏览器input::-moz-placeholder{color:#fff;}3、IE浏览器input:-ms-input-placeholder{color:#fff;}...

2019-03-06 16:06:26 6011

空空如也

空空如也

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

TA关注的人

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