自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

立先的博客

一个小前端

  • 博客(12)
  • 收藏
  • 关注

原创 解决拖拽到容器内,触碰子元素会频繁触发ondragenter和ondragleave

正常拖拽文件到指定容器时,如果容器内部没有元素,可以正常响应enter和leave事件,如果内部具有元素,虽然只是在父级别容器时添加的事件,依然会导致子元素误触发,在拖拽时会频繁出现ondragenter和ondragleave事件,原因是冒泡导致。...

2022-07-21 10:59:46 1958 1

原创 微信小程序 uni-app request 模仿axios二次封装

源码:import defaultsDeep from 'lodash.defaultsdeep'// 本文件,包裹uni.request请求方法,模拟axios使用方式的插件function forEach(obj, fn) { if (obj === null || typeof obj === 'undefined') { return } if (typeof obj !== 'object') { obj = [obj] } if (Object.p

2021-08-27 10:59:40 724

原创 typescript 闭包类型 高阶函数泛型使用

// 类型定义interface IClosureGeneric{ <T extends (...args: any) => any>(fn: T): (...args: Parameters<T>) => ReturnType<T> | void}/* 解释:1. <T extends (...args: any) => any> 函数参数前定义泛型参数T,约束T为函数类型2. Parameters<T>

2021-08-25 15:54:51 1756

原创 js新窗口临时页面 一次性页面

经常看到一些代码效果预览网站有这样一个效果,点击运行可以运行代码,弹出的页面没有url;也看不到源码,只有查看元素才有,这样的一次性页面很有趣,可以用在很多场景,不需要文件去保存,弹出的页面不能被保存。const newTab = window.open('', '_blank', '');newTab.document.open('text/html', 'replace');newTab.opener = nullnewTab.document.write('<div>内容</

2021-02-04 13:53:05 661

原创 Npm/yarn/cnpm/pnpm前端包管理器发展

npm/yarn/cnpm/pnpm前端包管理器发展前端领域在node的出现下,具有了非运行时,管理代码软件包的能力,使项目在多人开发之间具有了工程化和复用工具库的能力。node配套的包管理工具为npm,依赖管理主要在package.json文件中描述,依赖包安装在node_modules项目目录下。不同的项目依然如此,除了个别全局包外,这种安装方式非常占用空间及I/O消耗,会有大量的文件被从npm包缓存中拷贝在不同的项目目录中;npmnpm从发展过程中经历了如下阶段;第一阶段,npm2 所有的包

2021-02-04 13:42:42 499

原创 npm 拉取git仓库作为package包使用

npm 拉取git仓库作为package包使用用于不发包,又没有私有仓库,可以用这样的方式取读取包。读取方式:import pkgA from “pkgA”const pkgA = require(“pkgA”)注意:如果需要构建的话,那么构建的目录也要传到仓库,比如dist,如果忽略了,包拉取后无法正常通过main:"xxx.js"使用http方式:如果要验证会弹出用户名和密码git+https://github.com/nolonger21/fe-cli-app-example.gits

2021-02-04 13:36:14 4092

原创 npm/aliyun仓库自动登录脚本shell命令 jenkins 无法交互输入用户名和密码

jenkins 构建命令因为无法交互式填写命令,拉取aliyun的npm仓库需要添加仓库和登录,所以写了个自动登录的shell脚本# https://registry.npmjs.org/ npm# https://packages.aliyun.com/xxxx/npm/npm-registry/ aliyunregistry="https://registry.npmjs.org/" # 仓库地址username="username" # 用户名password="passport" #

2021-02-04 13:18:14 2628 3

原创 jenkins 安装puppeteer失败 "PUPPETEER_SKIP_CHROMIUM_DOWNLOAD" env variable to skip download

ERROR: Failed to download Chromium r686378! Set "PUPPETEER_SKIP_CHROMIUM_DOWNLOAD" env variable to skip download.{ Error: read ECONNRESET at TLSWrap.onread (net.js:622:25) -- ASYNC -- at BrowserFetcher.<anonymous> (/var/lib/jenkins/workspa

2020-05-09 18:55:19 5243

原创 vue cli 3 vue.config.js webpack打包node_modules npm包内的文件 Class constructor cannot be invoked without

import classA from ‘packageName’;class classB extends classA {...}以上使用方式将会在前端控制台报错:Class constructor cannot be invoked without 'new'因为webpack 默认打开忽略node_modules路径下的文件,只打包相对路径,业务引用的文件;解决方法:v...

2019-07-03 14:47:07 1290

原创 git 配置 命令行别名

.gitconfig 位置linux/macvim ~/.gitconfigwindows我的文档下面.gitconfig 文件内部加入如下配置;[alias]br = branchci = commitcl = cloneco = checkoutcp = cherry-pickcfg = clonedf = difffh = fetchlg = "log --co...

2019-06-23 17:11:53 982

原创 vue 自定义v-model 内外同步数据

<abc v-model="modelData"><script>export default { model: { prop: 'payload', // 这里的prop随便取,外面根本用不到,只是内部标识 event: 'change' }, props:{ payload:{ // 这个跟上面的model的prop一致 ...

2019-05-31 14:24:38 780

原创 vue elementui表单resetFields重置无效 rules验证无效

vue elementui表单resetFields重置无效 rules验证无效<el-form ref="form" :model="form"> <el-form-item prop="attr"> <el-input v-model="form.attr"></el-input> </el-form-item>...

2019-05-31 14:12:29 1922

空空如也

空空如也

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

TA关注的人

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