- 博客(53)
- 收藏
- 关注
原创 vue3 调度执行-控制执行次数
整段代码的意思是连续执行两次queueJob,这意味着同一个effect会被add两次但是由于Set数据结构能去重能力,最终jobQueue 只会有一个effect副作用函数。这时queueFlush也会类似的执行两次,但是由于isFlushing 标志的存在,实际上在一个事件循环内只会执行一次,即在微任务队列里只执行一次。这时i已经是11了,所以最终输出了11,并不会输出其他多余内容,符合我们的预期。但是我们只关心结果并不关心过程 所以2这个输出是多余的。那么我们有了需求就去实现一下,
2022-09-18 22:05:07
638
原创 vue 描点定位scrollIntoView无法移动到指定位置
使用window.scrollTo即可window.scrollTo({top: this.$el.querySelector(’#xxx’ + e).offsetTop - 100,behavior: “smooth”})
2022-02-24 17:19:20
1012
转载 uni-app 授权拒绝后再次授权
uni.getSetting({ success(res) { if (res.authSetting['scope.userLocation']) { console.log("userLocation位置功能已授权") // 如果已授权,直接获取对应参数 uni.getLocation({ success(res) { console.log(res) } }) } else if (
2021-07-20 22:03:00
1174
1
原创 path.resolve()路径
若字符以 / 开头,不会拼接到前面的路径;若以 …/ 开头,拼接前面的路径,且不含最后一节路径;若以 ./ 开头 或者没有符号 则拼接前面路径path.resolve('/foo/bar', '/tmp/file/')拼接后的路径 /tmp/file/path.resolve('/foo/bar','./baz')拼接后的路径 /foo/bar/bazpath.resolve('wwwroot', 'static_files/png/', '../gif/image.gif')拼接后的路径
2021-05-21 16:10:22
275
原创 resolve.alias
resolve.alias在组件之间相互引用时,可能是下面这样的:import Hello from '../../src.components/Hello';其中的路径是相对于当前页面的,但是如果嵌套等更为复杂,那么写起来会比较麻烦。但是如果我们通过这样的配置:resolve: { extensions: ['.js', '.vue', '.json'], alias: { 'vue$': 'vue/dist/vue.esm.js', '@pages':
2021-05-18 19:35:31
971
原创 resolve.extensions
resolve.extensions在webpack.base.conf.js中,我们可以看到resolve配置,其中的extengsions是一个数组,如下所示: extensions: ['.js', '.vue', '.json'],通过这样的配置,我们在应用组件时,就可以更为方便的使用,比如: import Hello from '@components/Hello';即Hello.vue这个组件我们不需要添加.vue后缀也可以引用到,如果不用extensions, 我们就必须要用@c
2021-05-18 19:27:46
981
原创 [学习笔记]node.js中的path
path.extname返回path路径文件扩展名,如果path以 ‘.’ 为结尾,将返回 ‘.’,如果无扩展名 又 不以’.'结尾,将返回空值。path.extname('index.html'); // returns '.html'path.extname('index.'); // returns '.'path.extname('index'); // returns ''...
2021-05-17 18:05:01
137
原创 css 实现倒三角圆角
使用条纹背景实现 width: 37px; height: 29px; background: linear-gradient(-41deg, transparent 53%, #61C4CF -33%); background-size: 51px 29px; border-radius: 0 0 0px 5px;
2021-04-02 19:16:08
615
原创 js 获取当前日期莫个 月前 或者 月后 的日期
function GetMonth(month) { var time = new Date('2021/3/31'); time.setMonth(time.getMonth() + month);//设置month月后的时间 var y = time.getFullYear(); var m = time.getMonth() + 1;//获取当前月份 var d = time.getDate(); return y + "-" + m + '-' + d
2021-03-19 17:56:43
151
原创 js获取一段时间内周的数组
class getDateWeekList { constructor(start, end) { this.start = start this.end = end } // 获取时间格式 getDateText(dd) { const nDate = new Date(dd) const y = nDate.getFullYear(); ...
2021-03-17 13:41:13
427
原创 vue 使用代理(proxyTable)报错500
vue 使用代理(proxyTable)报错500在做项目的时候原本正常的接口突然疯狂报错,经过询问后端他把http换成了https,然后我在代理里配置了https跑起来后还是会报错,后面突然想起了secure:false不验证证书这个选项,添加后重启项目就可以正常访问了。// index.js...proxyTable: { '/attendance': { target: 'https://xxxxxx', // 测试环境 secure:false,
2021-02-08 14:34:05
2734
原创 div里嵌套img高度超出
在写代码的时候经常遇到这样一个问题,如果div里嵌套一个img元素且div的高度是由img的高度来撑开,那么div的高度总会比img的高度多3px原因: 原来img是一种类似text的元素,在结束的时候,会在末尾加上一个空白符,所以就会多出3px解决方法:1.div设置font-size:0<div style="font-size:0"> <img /></div>2.div设置display:flex<div style="display
2021-01-08 10:43:13
821
原创 vue使用contenteditable 实现光标处插入自定义图片
vue使用contenteditable 实现光标处插入自定义图片前几天接到一个需求,要自定义编辑短信模板但是里面有 姓名,日期这样的标签,为了用起来方便于是决定让用户自己选中插入,类似富文本插入图片那样,好了废话不多说,展示。<template> <div class="content-padding"> <div class="shortMessage-tag"> <!-- 插入图片的标签 --> <img @
2020-12-31 18:46:28
2623
原创 js 方法调用和箭头函数this指向总结
this指向,一般谁调用函数this就是谁。没人调用就指向全局环境。箭头函数的this取决定义时的环境,它的内部没有this。
2020-07-10 18:46:18
263
原创 最通俗易懂的闭包原理解析
之前我对闭包的理解是内部函数调用内部变量被外部所引用但是我发现这样只是解释了闭包的现象,并没有说清楚原理,于是我再次研究了闭包有了一些新的见解。想要说清楚闭包的原理得先了解 AO(活动对象) VO(变量对象)对于他们的解释请自行百度不做过多解释。那直接开始吧!当执行到某函数时,在创建上下文环境的时候,会创建作用域,this,以及活动对象,活动对象就是js在分析当前环境有哪些变量,函数(变量提升...
2020-04-22 21:26:31
385
1
原创 Git配置多个SSH-Key
背景当有多个git账号时,比如:a. 一个gitee,用于公司内部的工作开发;b. 一个github,用于自己进行一些开发活动;解决方法生成一个公司用的SSH-Key$ ssh-keygen -t rsa -C ‘xxxxx@company.com’ -f ~/.ssh/gitee_id_rsa生成一个github用的SSH-Key$ ssh-keygen -t rsa -C ‘x...
2020-03-10 18:22:33
360
原创 git 创建仓库并且上传代码
创建仓库并且上传代码创建仓库比较简单,各种远程仓库也是比比皆是,比如Github等等…直接克隆项目 git clone git@xxxxxx(远程仓库项目的地址)本地创建一个README.md提交README.md文件 git commit -m “xxxxx” (提交到本地的版本库)git remote add origin “远程仓库地址”git push -u origin ...
2020-03-10 15:15:25
185
原创 ajax 和 axios获取文件流
ajax$.ajax({ type: 'get', responseType: 'blob', xhrFields: { withCredentials: true // 这里设置了withCredentials }, url: `${api_url}/base/downloadsExcelDown?tenderId=` + this.ten...
2020-03-07 13:37:18
433
原创 Promise.all 与 Promise.race的区别
Promise.all() 接收一个Promise对象的数组,待执行完成后统一执行successPromise.all([result1, result2]).then(datas => { // 接收到的datas是一个数组,依次包含了对个Promise返回的内容 console.log(datas[0]) console.log(datas[1])})**Promise.r...
2020-03-06 09:50:10
269
原创 html5 input type="datetime-local" 的赋值问题
赋值<input type="datetime-local" name="datetime">$('[name = "datetime"]').val('2020-03-05T13:30')当input为type="datetime-local"时必须为 2020-03-05T13:30 的格式取值<input type="datetime-local" name="...
2020-03-05 10:27:58
3105
原创 event-loop 事件轮循
例1setTimeout(()=> console.log(3), 100)setTimeout(()=> console.log(2))consold.log(1)首先 consold.log(1) 会直接输出因为是同步函数,之后会把setTimeout(()=> console.log(2))放入异步队列,之后是setTimeout(()=> console....
2020-02-29 15:00:58
186
原创 ajax实现上传文件或图片
html<input id="expert-img" name="img" onchange="getImgUrl()" accept="image/*" type="file" class="m-file"></input>js // 上传图片 function getImgUrl() { // 格式化数据 ...
2020-02-28 14:58:35
240
原创 js为啥是单线程
因为怕引起DOM冲突浏览器需要渲染domjs执行的时候也会修改domjs执行的时候,浏览器dom渲染会暂停两端js不能同时执行(都修改dom就冲突了)所以说js如果是多线程就会有许多问题,所以设计初衷就是单线程...
2020-02-27 21:36:07
304
原创 面试 JS 原型与原型链
构造函数 => new :构造函数可以通过new来得到一个实例构造函数 => prototype: 普通函数只要被new操作了,就可以变为构造函数(任何函数都可以成为构造函数),函数都有一个prototype(显式原型)会初始化一个空对象 这个空对象就是原型对象(prototype为js引擎自己添加的属性)原型对象 => 构造函数: constructor(构造器) 是为了...
2020-02-06 18:26:53
349
4
原创 面试中常问js创建对象的几种方法
使用自变量var o1 = {name: 'o1'}var o2 = new Object({name: 'o2'})使用构造函数 var M = function(name) {this.name = name} var o3 = new M('o3')Object.create 方法创建 var p = {name: 'p'} var o4 = Object.create(...
2020-02-06 15:01:02
180
原创 js基础for 循环的执行过程
for循环的执行顺序for(A;B;C){ D}进入循环执行A;//只是进入的时候执行.执行B;//条件为真才执行D,不然就跳出for了.执行D;执行C;再回到第2步开始执行真实的循环for(int i = 0; i<10; i++) { console.log(i)}// 同等于for(int i = 0; i<10;) { co...
2019-12-23 17:32:38
531
原创 闭包的理解
有理解不对得地方请大佬及时指出!!!https://juejin.im/post/5cf468a9f265da1bb77652aahttps://juejin.im/post/5cf468a9f265da1bb77652aa#heading-3https://yanhaijing.com/javascript/2014/04/29/what-is-the-execution-context-...
2019-12-20 11:03:39
195
转载 JavaScript执行上下文
原版: http://davidshariff.com/blog/what-is-the-execution-context-in-javascript/译文:https://yanhaijing.com/javascript/2014/04/29/what-is-the-execution-context-in-javascript/
2019-12-19 14:06:46
179
原创 React 里编译内容有带HTML标签的内容
注意防范xss攻击<span dangerouslySrtInnerHTML={{__html: 循环生成的内容}} />
2019-12-18 09:12:15
514
原创 dom0、dom2、dom3事件
dom0 通过 onclick 绑定到 html上的事件element.onclick=function(){}<div onclick="xx"/>dom2 通过 addEventListener 绑定的事件同一个元素的同种事件可以绑定多个函数,触发时按照绑定顺序执行element.addEventListener( “click” ,() => console.l...
2019-12-17 18:15:33
213
原创 浏览器打印不出背景 background-color
给要打印的背景的元素添加样式 -webkit-print-color-adjust: exact;
2019-12-17 17:49:18
2564
3
原创 js 保留2位小数 金额补零
Number(str).toFixed(2)toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。
2019-12-17 17:47:37
739
原创 Taro 动态修改头部导航文字
export default class Index extends Component { ...... Taro.setNavigationBarTitle({ title: this.$router.params.name }) ......}
2019-12-17 17:39:27
3137
原创 Vue 中使用定时器失效
应为vue会重写window使setInterval()返回一个对象,而window会返回一个id csItem(item) { const tt = window.setInterval(() => { item++ console.log(item) if (item === 3) { window....
2019-12-17 17:35:32
1338
原创 ele单元格用toggleRowSelection(row, true)回显遇到的问题
ele单元格用toggleRowSelection(row, true)回显时row必须返回当前列表渲染用的数据,自己存的数据是无效的 // 按数组回显选择框 echoCheckbox() { if (!this.selectObj[this.page]) { this.$refs.checkTable.clearSelection() re...
2019-12-17 17:34:25
2627
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人