自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 css文本超长显示省略号,鼠标hover省略号展示全部内容

再借助鼠标悬停标签展示其 title 内容的特性,为标签加上 title属性,实现我们想要的效果。首先,文字过长展示省略号。

2023-03-21 16:00:51 3724

原创 本地调试Vite打包后的代码

本地调试Vite打包后的代码

2022-11-22 12:27:22 1536

原创 ant-design-vue Tabs组件使用问题小记

ant-design-vue Tabs组件,切换tab重复请求/切换tab缓存组件不请求接口

2022-10-31 20:20:21 1040 1

原创 flex: 1; 子元素高度较高时不展示滚动条而是撑开父元素

flex布局中,flex: 1; overflow: auto;的子元素没有如期展示滚动条,而是被内容撑开高度;

2022-10-14 18:07:27 3141

原创 js 内容超过两行收起,不超过两行正常展示

移动端类似这样的效果,超过两行展示【省略号】和一个下箭头点击下箭头后的效果:(全行展开)实现方案一: 采用的方式,首先判断元素是否超过了两行,超过的话截取前N个字符拼接上省略号 展示;不超过两行正常展示。判断元素内容是否超过 n 行的方法如下.....................

2022-05-31 21:30:44 3400 1

原创 require和 import的区别

遵循的模块化规范不一样require/exports 出生在野生规范当中,什么叫做野生规范?即这些规范是 JavaScript 社区中的开发者自己草拟的规则,得到了大家的承认或者广泛的应用。比如 CommonJS、AMD、CMD 等等。import/export 则是名门正派。TC39 制定的新的 ECMAScript 版本,即 ES6(ES2015)中包含进来。从规范与实现定义来说 require是动态加载,import是静态加载,从底层的运行来讲,require是在程序运行的时候去解析而import是

2021-10-25 15:40:16 552

原创 flex:1; 到底代表什么

前言:在最初学习flex布局的时候,关于flex: 1;的概念很模糊,只是简单的认为flex: 1; 代表一份; flex: 2;代表两份。。。。后面遇到了关于弹性布局的一系列问题,于是将这个属性好好研究了一下。其实,flex:1; 是三个属性的简写,完整写法应该是: flex: 1 1 0%;第一个参数表示: flex-grow 定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大第二个参数表示: flex-shrink 定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小第三.

2021-10-09 11:52:10 10915

原创 谈谈js三元表达式

前言:三元表达式我一般用在条件赋值,遇到条件赋值我的第一反应就是三元表达式,但这样有时出现“滥用”,那么在这些“滥用”的情况中我们可以用哪些更好的方式替换三元表达式?正常情况下,使用三元表达式赋值,? 和 : 后面都应该是有值的。 <Button type={type === REPORT ? 'primary' : 'secondary'}>而出现下面的情况,就说明不应该使用三元表达式了。1、遇到true/false,证明可以直接赋值,不需要三元表达式const temp .

2021-10-07 22:13:32 377

原创 VSCode: ESLint + Prettier 代码语法检查和格式化

介绍一下如何在 vscode 中通过 eslint + prettier 来对代码进行语法检查。目前我们的项目主要是 tsx 为主,接下来的配置说明也将以 tsx 为主。很简单,两个插件长这样如果只是代码格式和语法检查:在vscode Setting文件中写好相关配置就行~{ "editor.formatOnSave": true, // 值设置为true时,每次保存的时候自动格式化;值设置为false时,按Command+Shift+F 格式化代码 "editor.defaultFor.

2021-09-29 18:24:12 282

原创 git commit 绕过代码检查

首先是我在用到这个命令时的背景,本地分支合并master分支后(为了自己提前解决一些冲突)再提交mr,请求将本地分支合并到master分支。问题就出在,本地分支合并master分支解决完冲突后的commit,因为master分支上更新了很多内容,导致commit时,有非常多的文件被更新了git commit提交不上,报了很多错误,我一看竟然都是eslint语法报错,而且都来自master分支更新过来的文件,估计是一些历史遗留问题这时候肯定没时间依次去修改,只能绕错pre-commit钩子中es.

2021-08-18 11:13:44 2920

原创 vscode常用插件

Auto Close TagAuto Rename TagBracket Pair ColorizerChinese (Simplified) Language Pack for Visual Studio CodeCSS PeekDebugger for ChromeGit HistoryGitLens — Git superchargedHTML SnippetsImport CostIntelliSense for CSS class names in HTMLopen in .

2021-08-02 20:26:59 92

原创 vue项目中如何设置支持多语言(i18n插件)

首先可以先下i18n插件的官方文档引入流程:安装插件npm install vue-i18n引入// i18n.jsimport Vue from 'vue';import VueI18n from 'vue-i18n';import msgs from '@/utils/lang/messages';// 注册i18nVue.use(VueI18n);function toLowerCaseKey(obj) { // iOS safari 10.2之前 语言代

2021-06-21 19:01:06 586 1

原创 js时间戳转时间(年月日)

/** * 格式化时间 * 时间戳单位:s */ secToTime(seconds) { let date = new Date(seconds); let year = date.getFullYear(); let month = date.getMonth() + 1; let day = date.getDate();...

2021-06-21 16:22:39 121

原创 husky工具配置git hooks

直接上链接,说的很清楚详细(当自己的笔记了):???? 先看这个???? 再看这个

2021-06-21 15:47:19 251

原创 git rebase

首先git merge 和 git rebase的区别:https://zhuanlan.zhihu.com/p/75499871git merge 操作合并分支会让两个分支的每一次提交都按照提交时间(并不是push时间)排序,并且会将两个分支的最新一次commit点进行合并成一个新的commit,最终的分支树呈现非整条线性直线的形式git rebase操作实际上是将当前执行rebase分支的所有基于原分支提交点之后的commit打散成一个一个的patch,并重新生成一个新的commit ha

2021-06-21 15:16:18 135

原创 Css中可以继承的属性

font字体相关 font-size font-weight font-family font font-styletext文本相关 text-align text-indent line-height text-transform direction word-spacing letter-spacing color光标: cursor可见性相关: visibility opacity

2021-05-13 17:54:42 71

原创 替换当前url

日常开发中经常遇到需要替换当前url的场景,这次我的需求背景是:打开一个新的页面且不需要历史记录;很自然的想到实现方案就是使用window.location.reload()来替换当前url,替换时还使用了query-string 包话不多说,看代码:????import qs from 'query-string'; let search = qs.parse(window.location.search);

2021-05-12 12:16:43 887

原创 vue中使用qrcode+canvas将二维码和图片合成分享海报

背景:需求是在web端生成一张带有二维码的分享海报,用户可以将海报图片保存到本地。实现思路: 使用qrcode生成二维码图片,再使用canvas将二维码和海报背景合成一张图片;直接看代码????// 按钮 <button v-else class="btn-default btn-share" @click.stop="sharePopup"> <span>打开分享图片</span>

2021-05-12 11:09:52 2218

原创 sourceTree推送报错Unknown author

开发完一段功能之后,使用sourceTree推送代码,出现错误:remote: ERROR: Unknown author:xxxx, your user nickname in gitlab is xxxxxxx. 'xxxxxxxxx' in commit 错误原因:修改代码的username和远程仓库中的username不一致。解决:1、首先使用git config --global user.name "xxxxxxxx"修改本地username;2、重新以修改后的username.

2021-04-13 19:48:27 346

原创 前端常用英语总结,持续更新

主要是我个人需要理解含义的单词,就当笔记啦,以后再遇到不理解的也会记在这里:collapse: 崩溃 塌陷 折叠visibility: 可见性 可见光font: 字体inherit: 继承,接替cursor: 光标transform: [v],变换,使改变形态transition: [n],过渡,变迁translate: [v],翻译,使转变...

2021-03-29 12:03:32 378

原创 Git和SVN版本管理的区别

最主要的区别:????GIT是分布式的,SVN不是集中式和分布式版本控制系统的区别看这里这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别。需要做一点声明,GIT并不是目前第一个或唯一的分布式版本控制系统。还有一些系统,例如Bitkeeper, Mercurial等,也是运行在分布式模式上的。但GIT在这方面做的更好,而且有更多强大的功能特征。GIT跟SVN一样有自己的集中式版本库或服务器。但GIT更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上chect

2021-03-26 17:29:05 117

原创 项目之间的相互依赖开发(yarn link)

link 的本质就是软链接,可以让我们快速使用本地正在开发的其它包。关于yarn link的使用 Yarn文档 中已经有了详细说明补充:如果一个项目依赖了其他多个项目,使用yarn link命令可以一次性创建多个软链接,多个包[package...]之间使用空格分隔yarn link @XXXX/recording-npm @XXXXX/gc-review-selectquestion...

2021-03-26 16:56:41 989

原创 vue改变数组的值,不更新视图解决方案

由于 JavaScript 的限制,Vue 不能检测数组和对象的变化。但是Vue 将被侦听的数组的变更方法进行了包裹,所以它们也将会触发视图更新。这些被包裹过的方法包括:: push(),pop(),shift(),unshift(),splice(),sort(),reverse()而通过直接修改数组某一项的值或者改变数组的length,vue不能监听到数组变化。 app.book[3] = 'xxxx'; // or app.books.length =1;因为vue实现双.

2021-03-22 22:09:13 1463

原创 利用app调试本地的h5代码

最近在开发内嵌app webview中的h5页面,本地写了代码,受一些app独有方法的限制(比如调用app提供的桥来获取一些值)有些现象在web浏览器上是模拟不出来的,这时候需要使用app来调试本地代码~调试方法:chrome浏览器安装草料二维码插件,web浏览器打开需要调试的页面,使用草料二维码生成二维码,使用手机app扫码即可(测试用的app一般都有扫一扫功能来方便h5开发调试,没有的话让app开发添加一下)需要注意的地方:手机和电脑需要连接同一局域网用来生成二维码的链接里面不要包含 loc

2021-03-19 16:01:42 698

原创 js: switch case使用与踩坑小记~

我们熟知的switch case是这样的:switch(表达式) { case n: 代码块 break; case n: 代码块 break; default: 默认代码块} 根据表达式的结果去匹配case的值,执行匹配到的case中的代码,并在遇到break的时候结束,如果没有break会继续乡向下执行代码,匹配case。如果没有匹配的case,会执行default中的代码。Java

2021-03-19 15:36:14 975

原创 vue中的img绑定动态src后找不到图片

解决方案加上require即可<div class="wrapper-home-top-topic"> <img :src="envLanguage==1?require('@/assets/img/afterreviewCt.png'):(envLanguage==2?require('@/assets/img/afterreview.png'):require('@/assets/img/afterreviewEn.png'))" alt="" /></div

2021-03-15 22:02:53 1078

原创 开发了一些内容发现还在master,没切换分支怎么办

背景: 憨憨如我),开发了一堆内容后发现自己在master分支,没有新建自己的分支…此时还没有push需求:新建一个功能分支,将新开发的内容保存到新的功能分支上。此时 git stash命令就用上了,不清楚的可以点击链接查看git stash常用命令解决步骤如下:保存本地更改,不要push !!!// 1、将新开发的内容暂存,暂存后git status能看到当前工作台是干净的~git stash save '功能暂存'// 2、切换分支git checkout -b 'lcx/feat-.

2021-03-10 21:42:06 912

原创 git stash常用命令

常用git stash命令:git stash save “save message” : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。git stash list :查看stash了哪些存储git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}git stash show -p : 显示第一个存储的改动,

2021-03-10 21:29:07 233

原创 markdown编辑器

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-03-10 21:26:35 49

原创 js执行过程

javascript相对于其它语言来说是一种弱类型的语言,在其它如java语言中,程序的执行需要有编译的阶段,但在javascript中也有类似的“预编译阶段”。javascript的预编译是以代码块为范围,即每遇到一个代码块都会进行 预编译>执行js执行顺序如下:预编译阶段不管代码中声明变量和声明函数的顺序如何,在预编译阶段会先声明变量,再声明函数编译compile:利用编译程序从源语言编写的源程序产生目标程序的过程(词法检查,语法检查,权限检查, 代码优化)运行runtime

2021-02-25 11:46:56 100

原创 vue源码阅读笔记

开始阅读前先明确以下内容:1、源码中出现大量以下划线_ 为首的变量名,这里_表示私有变量,不推荐外界访问2、vue 有很多版本,其中 runtime和runtime and compiler的区别这里我阅读的是runtime and compiler版本,也就是带编译的vue.js对于没有阅读源码经验的小白而言,直接去阅读源码是很困难的,这里推荐先去看一下这个~新手友好(不是广告哦~)以下是个人笔记,持续更新中~为什么在mounted()中就能通过this.messsage 的方式访问

2021-02-25 11:34:41 83

原创 在线包和离线包

在线包,就是下载一个简易的下载器。然后利用这个下载器再去完成下载。好处就是下载起来比离线包快,但是安装时是需要网络的。离线包,是直接下载一个可用的应用程序。好处是方便,可以利用离线包在没有网络的情况下随时重装~国内用离线包会比较舒服。毕竟那天要重装,就不用到处找资源了。...

2021-02-07 21:36:07 2577

原创 灰度发布和全量发布

全量发布:即时向全量用户发布新版小程序。灰度发布:在一定时间内以开发者自定义比例,向部分比例的用户发布更新。简单来说,前者是一次性发布;后者允许小范围尝试发布,在发现问题后能及时更正后提升范围,甚至撤销发布。一般来说,普通程序发布时采用全量发布即可,当程序承载的功能越来越多,使用的用户数越来越多时,采用分阶段发布是一个非常好的控制风险的办法。灰度发布时,添加进灰度白名单的人,不会占用发布比例的名额哦~...

2021-02-07 21:32:19 4034

原创 什么是SDK,什么是API

SDKSDK的中文名叫“软件开发工具包”,它被开发出来是为了减少程序员工作量的,有公司开发出某种软件的某一功能,把它封装成SDK(比如美颜SDK就是能够实现美颜功能的SDK),出售给其他公司做开发用,其他公司如果想要给软件开发出某种功能,但又不想从头开始搞开发,可以付钱省事。sdk和api拼命解释~你可以把SDK想象成一个虚拟的程序包,在这个程序包中有一份做好的软件功能,这份程序包几乎是全封闭的,只有一个小小接口可以联通外界,这个接口就是API。如果我们现在短视频中增加某个功能(比如美颜、萌颜、云

2021-02-04 11:22:54 268 1

原创 什么是源,什么是镜像

源源就是来源。就是你安装软件时,程序从哪里获取软件包(安装程序在你的机器上,但需要安装的东西却在软件源服务器上)。源,在Ubuntu下,它相当于软件库,需要什么软件,只要记得正确的软件名就可以用命令抄安装:其实你可以把他称为软件仓库。安装软件时,就是从仓库里面调取数据放在你的机器上。镜像镜像,原意是光学里指的物体在镜面中所成之像。引用到电脑网络上,一个网站的镜像是指对一个网站内容的拷贝。镜像通常用于为相同信息内容提供不同的源,特别是在下载量大的时候提供了一种可靠的网络连接。制作镜像是一种

2021-02-04 11:18:39 8388

原创 git clone速度过慢

背景: git clone vue源码,由于一些qiang的原因,最开始进入github就挺慢的,git clone的时候无敌巨慢!!排除本地网络的原因,大概率是q和代理的原因解决:可以先切换下克隆方式,https或者ssl…以下重点!如果可以使用代理,速度仍然很慢使用github的镜像网站进行访问,github.com.cnpmjs.org,我们将原本的网站中的github.com进行替换。例如:访问 https://github.com/替换为访问:https://git

2021-02-04 11:01:31 100

原创 js实现文件下载并重命名

背景:element-ui写的一个表格,由于数据量太多而目前的筛选功能不完善,新增了导出数据的功能,一键将所有数据下载为一个excel,让运营人员去excel中搜索。导出数据的功能是后端小哥哥做哒,前端只负责下载。此时,后台小哥哥抛给你一个下载的url可以用 window.location.href = url;来下载,但是不够优美(不能根据需求重命名一般的做法是获取文件 Blob,然后下载重命名,简单整理了一下 // 下载方法 downloadExcel(url, filename

2021-02-02 15:28:22 4655 1

原创 vscode设置保存代码,自动按照eslint语法格式化代码

首先安装扩展 Vetur 和 ESLint打开设置,右上角找到这个小图标:以下代码 粘进去! Over!!! "files.associations": { "*.vue": "vue" }, "eslint.options": { "extensions": [ ".js", ".vue" ] }, // 保存后自动修复格式 "editor.codeA.

2021-01-29 17:10:42 143

原创 elementUI Pagination 分页页面刷新后总页码变为0

今天使用了element-ui组件库中的pagination分页功能,非常方便,但是这个功能有个小坑:页面加载完成后刷新页面,总页码(total)变为0,再通过pagination组件改变页码,重新发起请求更新total的值,也不能在页面响应式变化,页面上的 总页码(total)始终为0解决:给pagination 增加一个v-if控制是否生成分页,最开始设置为false,每次获得total的值后重置v-if的值为true...

2021-01-29 17:01:26 1109

原创 element-ui Select选择器设置默认选中

展示效果:默认选中全部代码部分:/*这里 lessions是一个对象console.dir打印如下:Object0: "全部"1: "PF3"2: "PF4"3: "PF5"4: "PF6"5: "PF7"6: "PF8"7: "PF9"1001: "PF2"1002: "PF1"*/<el-select v-model="lessionsLevel"> <el-option v-for="(value, key, index) in lessi

2021-01-29 16:50:16 16035

空空如也

空空如也

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

TA关注的人

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