- 博客(55)
- 问答 (1)
- 收藏
- 关注
原创 vscode侧边栏Git源代码管理器丢了?
vscode中git源代码管理器插件是内置的,是不需要安装的。如果侧边那个图标不见了的话,可以按照一下方式找回。点击查看,点击源代码管理,侧边栏就出现了但是侧边栏一切换,那个源代码管理图标又消失了?这是嘛呀?那是因为没有固定在侧边栏,固定一下就好了。右击图标 => 保留源代码管理如果上面的操作没起作用,那可能是因为你禁用了Git这个内置的插件。打开扩展,输入@builtin,找到Git插件然后启用它就好了。如果按上面操作后侧边栏的源代码管理图标还是没出来的话
2022-05-18 20:11:59
6379
2
原创 动手吧,vue图形验证码组件
组件内容<template> <canvas id="canvas" ref="canvas" :width="width" :height="height" @click="updateCanvas" ></canvas></template><script>export default { data() { return { ctx: null, computedWidth: 0, c
2022-05-10 19:30:46
760
原创 vue中如何使用h5自定义标签?
h5是本身是支持自定义标签的,且自定义标签为行内元素,即display:inline;如果在vue中使用自定义标签:原因:vue会假设你忘记注册全局组件或者拼错了组件名称解决:在main.js中设置 Vue.config.ignoredElements = ['xxx','xxx'] , 数组项为你需要vue忽略的自定义元素名称,支持正则表达式。eg:Vue.config.ignoredElements = [/^dlb/]...
2022-05-06 15:49:13
934
1
原创 动手吧,vue2自定义全局loading
新建loading.vue, 用来写loading组件<template> <div class="loading-mask flex-center-center"> <svg viewBox="25 25 50 50" class="circular"> <circle cx="50" cy="50" r="20" fill="none" class="path"></circle> <circ..
2022-05-05 16:20:36
1494
原创 从循环中使用splice方法带来的问题,发现for循环真好
需求:删除[1,2,3,4,5]中大于等于2小于5的项。(在业务场景中也是再常见不过了)结果:[1,5]当使用for:let a = [1, 2, 3, 4, 5];for (var i = 0; i < a.length; i++) { if (a[i] >= 2 && a[i] < 5) { a.splice(i, 1); }}console.log(a);//[1,3,5]这里没有得到正确结果,因为删除数组项时改变了数组
2022-03-06 12:45:58
728
原创 vue-cli 配置预处理器全局变量(以less为例)
vue官方提供了两种方法1.style-resources-loader2.vue-cli-plugin-style-resources-loader使用第一种方法自己通过npm安装经常会出现报错:TypeError: Cannot read property 'style-resources-loader' of undefined或者 variable xxx is undefined所以,删除style-resources-loader(虽然vue-cli-plugin的插件.
2021-10-04 21:47:05
1483
原创 白话正则表达式匹配规则
不脱离文档来进行白话文记忆,更容易加深印象,记忆深刻。\文档:将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。我:匹配一些特殊字符需要进行转义,使得它失去原有含义。如[、{、(、*、/等符号都需进行转义。如:var reg = /\(\)/^文档:匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^
2021-04-28 16:50:57
361
2
原创 隐式转换[] == ? {} == ? 弄懂这些应该差不多了
只考虑a == b进行隐式转换的情况1.字符串与数字比较 字符串转换成数字再进行比较2.字符串(或数字)与布尔值比较 布尔值先转换成0或1再进行比较3.对象与布尔值比较对象通过toString()进行转换,布尔值转换为0或1, 两者再进行比较(对象通过toString()转换后为"[object Object]",这个应该比较眼熟,如alert一个对象时,弹窗总出现"[object Object]",因为alert方法参数要为字符串)4.数组与布尔值比较数组转换成数字,布尔...
2021-03-23 18:26:09
190
原创 常用或可用的js库
常用方法和函数库lodash日期和时间处理:monentjs dayjshtml截图html2canvas图片裁剪cropperjs生成二维码qrcodejs2富文本编辑器ueditor wangeditor数据可视化echart highChart支持嵌套的querystring解析器qs流程图/关系图/组织结构图:gojs(收费) Orgchart.........
2021-03-05 14:15:46
987
2
原创 vue中使用day.js(时间日期处理库)
安装:npm install dayjs --save引入:var dayjs = require('dayjs') //commonjs//import dayjs from 'dayjs' // ES 2015如果需要使用到插件,那么还需引入插件并使用:eg:importrelativeTimefrom"dayjs/plugin/relativeTime";//importrelativeTime plugindayjs.extend(relativeTime); ...
2021-02-25 16:31:50
8522
原创 html2Canvas问题
1.截取内容包含图片,且图片本身或外盒子设了宽高,那么截取前html2canvas会将图片100%填满外层盒子,所以截图后图片会变形<div class="img-wrap" id="hh"> <img *ngIf="!poster" src="https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3609241929,573960707&fm=26&gp=0.jpg" alt=
2020-12-31 15:08:43
294
原创 rxjs
rxjs: 信息流(如数据流、事件流)=> 管道(处理信息)=> 订阅(只有订阅了,前面的工序才能进行)fromEvent(target:EventTargetLike, eventName:string, options:EventListenerOptions, selector:SelectorMethodSignature<T>):Observable<T>
2020-12-01 18:46:40
344
原创 angular获取及操作Dom
ElementRef对视图中某个原生元素的包装器。ElementRef的背后是一个可渲染的具体元素。在浏览器中,它通常是一个 DOM 元素。class ElementRef<T> { constructor(nativeElement: T) nativeElement: T //背后的原生元素,如果不支持直接访问原生元素,则为 null(比如:在 Web Worker 环境下运行此应用的时候)。}当需要直接访问 DOM 时,请把本 API 作为最后选择。优先使用 A.
2020-11-27 15:51:10
1130
原创 angular @component中需要知道的属性
@component属性:encapsulation@Component({ selector: 'app-xxx', templateUrl: 'XXX', styleUrls: ['XXX'], encapsulation:ViewEncapsulation.Emulated //不写则默认该值})encapsulation提供三个值:ViewEncapsulation.Native:在angular10.0中已经去除。ViewEncapsulation.Emula
2020-11-10 18:38:07
660
原创 js html css 不兼容,不常用知识
1.startsWith() 完全不支持ie用于检测字符串是否以指定的子字符串开始。语法:string.startsWith(searchvalue, start)
2020-11-03 17:29:19
376
2
原创 angular service 和 @injectable
为什么需要服务?官方:组件不应该直接获取或保存数据,它们不应该了解是否在展示假数据。 它们应该聚焦于展示数据,而把数据访问的职责委托给某个服务。服务是在多个“互相不知道”的类之间共享信息的好办法。也就是,获取数据和视图展示应该相分离,获取数据的方法应该放在服务中。全局的共享数据(通用数据)及非父子组件传值、共享数据放在服务中是很好的,类似vue中的vuex。创建服务利用angular cli 命令创建服务ng generate service heroimport { Inj.
2020-11-02 18:07:30
1572
6
原创 angular组件的变更检测策略changeDetection
属性:changeDetection 用于当前组件的变更检测策略@Component({ selector: 'app-xxx', templateUrl: 'XXX', styleUrls: ['XXX'], changeDetection:ChangeDetectionStrategy.OnPush})当组件实例化之后,Angular 就会创建一个变更检测器,它负责传播组件各个绑定值的变化。 该策略有下列值:ChangeDetectionStrategy.Defa..
2020-10-26 15:11:17
1666
原创 angular注意问题
1.跳转至当前路由时,页面不会刷新,需重新初始化。2.获取路由参数时,activatedRoute.snapshot.queryParams必须放在构造函数中,否则可能会出现获取不到参数的情况。
2020-10-09 18:21:32
248
原创 外层元素固定高度且溢出滚动时,对内层fixed定位元素的影响
外层元素固定高度且溢出滚动,当光标悬浮在其内层fixed定位元素上来滚动内容时,内容无法滚动,会导致用户体验不好。
2020-10-09 18:12:44
1079
原创 快速高效删除node_modules
有时需要删除node_modules重新install,而手动删除经常提示需要管理员权限,这个文件很大而且包含的文件很多,所以删除很慢。快速删除的方法(通过rimraf包)安装:npm install rimraf -g使用:rimraf node_modules...
2020-09-11 14:53:21
508
原创 实现浅拷贝和深拷贝+
推荐大佬文章,通俗易懂,考虑全面:https://segmentfault.com/a/1190000020255831浅拷贝意义不大,深拷贝确实需要。在日常开发中,如果只是对后端返回数据进行深拷贝,JSON.parse(JSON.stringify())就可以。在写一些功能性的方法时,该方法就不能用了,它无法拷贝含有函数和正则的object对象,因为该方法会把函数和正则变成null。那么就需要利用递归的方法将引用值类型最终拆分为原始值类型返回。...
2020-09-04 18:22:58
144
原创 判断数据的精确类型
Object.prototype.toString.call(value)这不是toString方法吗,转成字符串吗?其实toString()是object原型上的方法,所有引用类型都能继承它,它返回的是"[object type]",type为object对象类型。既然引用类型都有这个方法,为什么返回的形式并不都是"[object type]"呢?再来看看mdn发现大部分重写了toString()方法,也就是说比如数组的原型链有两个toString方法,那么就会继承原型链上离自己最近的方法,所
2020-09-04 17:57:28
230
转载 angular中使用第三方库
有些库有typescript声明文件,有export就可以用import导入,没有的话可以使用页面引入的方式或者angular.json文件配置的方式配合declear const name的方式使用如果我们想在Angular中使用第三方的库,比如jquery或bootstrap等,该如果做呢?有两种方法一、npm install name通过npm install ${name} --save 安装在node_modules目录下,package.json中的dependencies会配置正式环境所
2020-08-27 08:11:12
700
原创 少见的按位操作符
按位操作符(Bitwise operators) 将其操作数(operands)当作32位的比特序列(由0和1组成),而不是十进制、十六进制或八进制数值。例如,十进制数9,用二进制表示则为1001。按位操作符操作数字的二进制形式,但是返回值依然是标准的JavaScript数值(来自MDN)。也就是将操作数转成一串32位的二进制。按位操作符进行运算前先要转成32位的二进制(超过32位的会被丢弃)。如何丢弃的?丢弃前: 11100110111110100000000000000110000000000001
2020-07-29 15:51:51
228
原创 这些题~~
#题1var dlb = 1;if(function a(){}){ dlb += typeof a;}console.log(dlb)#题2var abc = (function f (){ return "1";},function g (){ return 2;})();console.log(abc);
2020-07-22 23:27:57
161
原创 ios端日期转时间戳问题
var date0 ='2020-03-25 15:21:23';var time = new Date(date0).getTime();ios中,time获取不到,应改为:time = new Date(date0.replace(/-/g,'/').getTime()
2020-04-25 10:48:38
364
原创 逗号操作符你有用过吗?
什么是逗号操作符?mdn解释: 对它的每个操作数求值(从左到右),并返回最后一个操作数的值。翻译:如(x,y),从左到右分别计算x和y,最后返回ymdn案例:let x = 1;x = (x++, x);console.log(x); // 2 是不是感觉好像这个逗号操作符没什么作用啊?存在就有意义,在一些场景还是有用的。举个栗子:(用reduce可以实现reverse) v...
2020-03-05 11:27:20
253
原创 vue-router
路由配置:{ path:'/', name:'home', component:Home, redirect:'/home' //路由重定向}{ path:'/learn', name:'learn', component:()=>import('./views/Student') //路由懒加载,即没有切换到该路径时不加载}{ path:'/p...
2020-03-03 20:32:00
263
原创 vue-cli 3.x
1、使用命令在一个 Vue CLI 项目中,@vue/cli-service 安装了一个名为 vue-cli-service 的命令。你可以在 npm scripts 中以 vue-cli-service、或者从终端中以 ./node_modules/.bin/vue-cli-service 访问这个命令。这是你使用默认 preset 的项目的 package.json:{“scripts...
2020-03-03 16:20:54
164
空空如也
如何做到在iframe页面滑动时其父页面不会跟着滑动?
2022-01-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人