自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TS infer

先看一段ts源码看不懂没事,接下来一步步带你看懂你知道如何获取 T0 数组类型中元素的类型和 T1 函数类型中的返回值类型么?要实现上述的功能,我们可以使用 TypeScript 提供的类型模式匹配技术 —— 条件类型 + infer。条件类型允许我们检测两种类型之间的关系,通过条件类型我们就可以判断两种类型是否相兼容。而 infer 用于声明类型变量,以存储在模式匹配过程中所捕获的类型在以上代码中,

2024-01-16 14:49:33 424

原创 js中的for...of和for...in 的简单对比

tips:文章主要讲for...of的使用,穿插对比for..in的使用for of 的使用我们可以追溯到IteratorIterator接口的目的,就是为所有数据结构,提供了一种统一的访问机制,即for…of循环。当使用for…of循环遍历某种数据结构时,该循环会自动去寻找Iterator 接口。概括:有Iterator 接口的数据结构,就可以使用for…of循环;原生具备 Iterator 接口的数据结构如下。

2023-12-26 10:53:52 87

原创 要获取某一天的周一日期,要获取某个月的月底时间

要获取某一天的周一日期,你可以使用JavaScript中的Date对象和一些日期计算方法。要获取某个月的月底时间。

2023-12-01 16:57:19 96

原创 身份证号码校验

根据《新版外国人永久居留身份证适配性改造要点》,公司需要把代码中对身份证的校验进行优化。既往版本永居证号码 由三位国家和地区代码开头 + 地址码+顺数码+校验码;新版永居证号码以 9 开头 + 受理地区代码+出生日期+顺序码+校验码;format 正则可视化图片。

2023-11-22 15:04:46 1438

原创 uni-app小程序 swiper 分页器样式修改

小程序中使用 wx-swiper-dot和wx-swiper-dot-active选择器。H5中使用uni-swiper-dot和uni-swiper-dot-active选择器。

2023-11-22 14:54:26 1021

原创 文字溢出省略号

【代码】文字溢出省略号。

2023-11-16 10:45:16 41

原创 iframe 多层嵌套页面跳转

假设有A、B、C和D四个h5页面,D通过iframe嵌套在C中,C通过iframe嵌套在B中,B通过iframe嵌套在A中。如果要在B所在的iframe中跳转怎么办?聪明的你一定能想到,就是多写一个parent。在上一层跳转(D页面所在iframe的父页面中跳转,即C所在的iframe中跳转)要在其上多少个层级上跳转,就写多少个parent就好了,举一反三很简单。然后现在在D中编写JavaScript代码跳转页面。在本页面跳转(D页面所在的iframe中跳转)在最外层跳转(A页面跳转)

2023-10-20 16:45:28 346

原创 uniapp使用vuedraggable 报错Cannot read property ‘id‘ of null“

Dcloud 社区找到了答案 真滴不错哦。

2023-08-04 13:30:19 325

原创 去除字符串中的html标签

【代码】去除字符串中的html标签。

2023-08-03 14:12:45 152

原创 IntersectionObserver实现无线滚动和懒加载

/ 开始观察 observer . unobserve(target);// 停止观察 observer . disconnect();// 关闭观察器IntersectionObserver支持两个参数:callback是当被监听元素的可见性变化时,触发的回调函数options是一个配置参数,可选,有默认的属性值。

2023-05-30 16:32:52 831

原创 记录一些可能被忽视的html属性

HTML 中的 Spellcheck 属性是用来指定是否对元素启用拼写检查的属性。HTML中的Contenteditable属性是用来指定元素是否可编辑的属性。HTML 中的 Translate 属性是用于指定元素是否应被翻译的属性。utocomplete 属性是用于指定表单元素是否启用自动完成的属性。Inputmode属性是用于指定在文本框中输入的内容类型的属性。Download属性是用于在链接下载文件时指定文件名的属性。numeric:表示输入的数字。url:表示输入的URL地址。

2023-05-30 11:27:56 468

原创 select 样式美化

【代码】select 样式美化。

2023-05-11 14:55:54 645 1

原创 解决合并冲突的问题

Git: pull时提示Please commit your changes or stash them before you merge.对本地的代码进行修改后,直接git pull会提示本地代码和github代码冲突,需要先commit本地代码,或者stash他们。这样操作的效果是在最新的仓库代码的基础仍保留本地的改动。git stash pop: 将刚藏起来的改动恢复。git pull:用新代码覆盖本地代码。git stash: 将改动藏起来。

2023-03-13 16:49:47 259

原创 nvm安装 疑难问题解决

nvm安装避坑指南

2023-01-13 14:27:26 1115 1

原创 滚动到指定行 scrollIntoView()

需求:滚动到指定行。在我苦思无果后,就把这个问题搁置了(直接摆烂)最近在啃书《javascript高考程序设计》,偶然看到一个方法,Element.scrollIntoView(),只能说妙呀。废话不多说,给大家介绍一下这方法的使用。

2022-12-20 17:02:30 625

原创 js选择排序的实现

思路选择排序的实现思路是从未排序序列中找到最小的元素,放到已排序序列的末尾,重复上述步骤,直到所有元素排序完毕。具体1)假设未排序序列的第一个是最小值,记下该元素的位置,从前往后比较2)若某个元素比该元素小,覆盖最小值的位置3)重复第二个步骤,直到找到未排序的末尾4)将未排序元素的第一个元素和最大元素交换位置5)重复前面几个步骤,直到所有元素都已经排序。代码实现

2022-12-07 13:32:27 313 1

原创 vue中含有iframe的页面如何避免路由切换时keep-alive不起作用

vue中含有iframe的页面如何避免路由切换时keep-alive不起作用

2022-11-30 13:53:15 1542

原创 vue页面批量引入组件

vue页面批量引入文件

2022-11-30 11:22:00 1732

原创 css选择器总结

css选择器

2022-10-17 17:05:49 199

原创 vite 中配置@表示访问src下的文件

vite 中配置@表示访问src下的文件

2022-07-15 10:06:09 1007

原创 vue3 devtools 安装指南

vue3 devtools安装指南

2022-07-15 08:59:44 4810 3

原创 js深拷贝和浅拷贝的理解

js深拷贝和浅拷贝的实现方法

2022-06-30 13:30:20 177

原创 定点小数和定点整数的取值范围

定点小数和定点整数的取值范围

2022-06-28 10:20:55 3753

原创 JS中遍历对象属性的几种方式

为了彻底搞定对象遍历的方法,我不得不翻出我的红宝书,找到“面向对象的程序设计—创建对象”的内容,仔细的研究了一下(起因来源于,突发奇想,想彻底搞懂原型链相关的知识,结果发现了对象属性遍历的几种方式,O哈哈~)我们先创建一个对象1. 这个方法接收一个对象作为参数,返回一个包含所有可枚举实例属性的字符串数组如果你想要得到所有实例属性,无论它是否可枚举,都可以使用 方法。用 循环时,返回的是所有能够通过对象访问的、可枚举的属性,其中既包括存在于实例中的属性,也包括存在于原型中的属性...

2022-06-22 15:01:14 11002

原创 前端如何处理后端一次性传来的10w条数据

懒加载 实现数据量较多时的列表展示

2022-06-21 11:18:24 6144 13

原创 vue2项目搭建

软件安装说明:先安装node.js(node-v8.11.3-x64),再安装Git-2.18.0-64-bit,最后安装vscode。安装node.js(http://www.runoob.com/nodejs/nodejs-install-setup.html)基于node.js,利用淘宝npm镜像安装相关依赖在cmd里直接输入:npm install -g cnpm --registry=https://registry.npm.taobao.org,回车,等待安装…安装全局vu

2022-06-20 09:25:00 3015

原创 尚硅谷webpack学习笔记

npm init全局安装webpack和局部安装这里注意webpack版本这些资源都需要下载webpack.config.jscss提取样式文件这里需要注意webpack的版本安装css兼容性处理安装兼容性处理:帮找到中里面的配置,通过配置加载指定的css兼容性样式css压缩安装使用js语法检查https://www.npmjs.com/package/eslint-config-airbnb-base忽略一些语法检查js兼容

2022-06-20 09:04:00 606

原创 element ui 限制时间范围

//限制结束日期不能大于开始日期pickerOptions0: {disabledDate: (time) => {if (this.ruleForm.endDate != “”) {return (time.getTime() < Date.now() - 24 * 60 * 60 * 1000 ||time.getTime() > this.ruleForm.endDate);} else {return time.getTime() < Date.now()

2022-06-20 09:03:06 133

原创 vue3 Vuex数据持久化存储

import { createStore, createLogger } from 'vuex'import { user } from './modules/user'import { system } from './modules/system'import createPersistedState from 'vuex-persistedstate';import ls from '@/utils/local-storage';const debug = process.env.NODE

2022-06-20 08:49:29 1449

原创 安装craco报错 antd react 修改全局主题

antd react 修改全局主题安装craco报错npm i @craco\[email protected]官网的命令是npm install @craco/craco,这样会导致craco版本不够新,也就是运行报错的关键,所以使用我这边的命令,安装最新版本的craco/* package.json */"scripts": {- "start": "react-scripts start",- "build": "react-scripts build",- "t

2022-06-20 08:42:16 1653 1

原创 判断当前用户是否正在与页面交互

Page Visibility API不知道用户是不是正在与页面交互,这是困扰广大 Web 开发人员的一个主要问题。如果页面最小化了或者隐藏在了其他标签页后面,那么有些功能是可以停下来的,比如轮询服务器或者某些动画效果。Page Visibility API(页面可见性 API)就是为了让开发人员知道页面是否对用户可见而推出的。document.hidden:表示页面是否隐藏的布尔值。页面隐藏包括页面在后台标签页中或者浏览器最小化。document.visibilityState:表示下列 4

2022-06-20 08:40:40 509

原创 git学习(自用)

gitee 简易的命令行入门教程:Git 全局设置:git config --global user.name "陌上烟雨寒"git config --global user.email "[email protected]"创建 git 仓库:mkdir test1cd test1git init touch README.mdgit add README.mdgit commit -m "first commit"git remote add origin https://git

2022-05-23 10:31:50 143

原创 react学习记录

react简介1、 react是什么用于构建用户界面的javascript库是一个将数据渲染为HTML视图的开源javascript库2、 谁开发的facebook jordon walke创建3、react的特点采用组件化的模式、声明式编码,提高开发效率及组件复用率在react native中可以使用react语法进行移动端来发使用虚拟dom+有效的Diffing算法,尽量减少与真实DOM的交互react入门reacr的基本使用相关js库react.js react核心库re

2022-05-23 10:29:06 259

原创 vue中printjs使用指南

使用攻略参考文档https://printjs.crabbly.com/分页使用css的 page-break-after:always 来控制在某个DIV之后新开一个页面<div style="page-break-after:always">我是封面</div><div style="page-break-after:always">我是目录,你不知道我的内容有多长</div><div>我是正文,我需要从一个新页面开始展示&l

2022-04-26 13:09:35 8205

原创 node学习(自用)

2 fs文件系统模块const fs = require('fs')2.1 读取文件中的指定内容fs.readFile() 语法格式fs.readFile(path[,options],callback)path:路径options:编码格式callback:读完文件后拿到的结果const fs = require('fs')fs.readFile('./files/11.txt', 'utf8', function (err, dataStr) { if (err) {

2022-04-08 15:37:45 1218

原创 tinymce如何设置不可编辑但可以打印

初始配置参考https://blog.csdn.net/weixin_47180815/article/details/121748486在init配置中添加keydown和keydown事件,给编辑器的内容重新赋值来达到无法输入的效果。这里的props.otherInfo入参可以拷贝一份v-modal的值(注意需要深拷贝)在打开编辑器的时候设置leafDetail.otherInfo = leafDetail.content;有其他比较好的方法可以在评论区讨论哦...

2022-03-14 15:16:51 2311

原创 vue动态添加路由之避坑指南

你是否遇到了:addRouter后出现白屏路由守卫出现死循环踩了很多坑之后,我终于悟到了vue动态添加路由的正确打开方式;为了设计权限,在前端我们通常采取两种方式1、在用户登录时获取该用户权限下的路由表,动态生成路由和菜单栏(后端给定路由)2、在用户登录时获取用户权限,根据权限筛选出需要的路由(前端通过权限筛选路由)本篇文章采用方式一关键点:使用route中addRouter方法动态添加路由将路由分为(1)动态路由 myRouterObj (可从后端获取)(2) 静态路由 st

2022-03-09 11:31:31 2066

原创 谷歌浏览器检查元素时,开发者工具打开的很慢

不知道怎么突然又一天,按完F12后就开始慢的怀疑人生。我以为是系统卡顿,我就忍了。终于在经历这样的折磨数天之后我有点忍不了了。百度了一下发现是没有选对语言。我们把英文UK换成英文US就行。然后你就会发现,F12后开发者模式的窗口会秒开了,经历了那么多的折磨,简直酸爽到不行。...

2022-03-04 09:20:26 1375 5

转载 解决Antd Table组件表头不对齐的问题

最后一列不设置宽度。因为antd会自己给最后一列分配宽度;设置合适的宽度。推荐用百分比设置宽度。scroll属性中的x选择一个合适的值(或者直接设为 max-content)scroll={undefined{ x: 'max-content', y: tableHeight() }}4.给Table组件设置这个中英文都换行的样式style={{ wordBreak: 'break-all' }}<Table bordered loadi..

2022-03-01 11:27:20 2432

原创 解决a-table打印时单元格中的内容不换行的问题

解决a-table打印时单元格中的内容不换行的问题绞尽脑汁,尝试了多种方法后终于发现了怎样解决.table .ant-table-tbody > tr > td { padding: 2px !important; white-space: pre-wrap; }最重要的是white-space: pre-wrap;white-space 属性设置如何处理元素内的空白。这个属性声明建立布局过程中如何处理元素中的空白符。值 pre-wr

2022-02-18 10:00:45 988

空空如也

空空如也

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

TA关注的人

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