
JavaScript
文章平均质量分 61
LangForOne
奔三的小全栈,现任某互联网科技公司研究院开发工程师,前端后端皆有探究,不断提高,無限進步。文章多数为分享在工作开发项目中遇到的问题和一些思路经验,以及可有可无的心得分享
展开
-
vue中用ref实现父子组件、孙组件、兄弟组件、非亲子孙组件互相调用的方法
无论是什么层级的组件之间互相调用,掌握好ref后都是万变不离其宗。来练练手吧。原创 2022-09-03 09:43:48 · 4841 阅读 · 4 评论 -
JS将一个数组切割成同等大小的多个数组的方法
简单记录一下,如果未来再遇到相同情况就可以直接复制使用了THX原创 2022-07-08 15:29:20 · 2063 阅读 · 0 评论 -
js验证可选时间范围的两种方法:用时间戳与Moment.js分别举例实现日期不能跨30天与日期不能跨12个月
前提:时间选择器绑定的值类型取Date,当选择时间发生改变时,执行paramsChange方法,在该方法开头验证所选时间是否正确,若正确则进行接口请求,反之弹出错误提示信息。时间显示维度为日时,正常查询显示如下:若所选时间范围超过30天,则弹出错误提示信息:方法一:用时间戳验证时间范围 paramsChange(row) { this.params = { ...this.params, ...row, // 因为时间维度选的是原创 2022-04-25 18:15:22 · 2326 阅读 · 0 评论 -
js一个常用的正则表达式0-100之间的数(最多允许包含两位小数)
0到100之间最多允许包含2位小数多用于百分数场景:^([0-9]{1,2}$)|(^[0-9]{1,2}\.[0-9]{1,2}$)|100$/^([0-9]{1,2}$)|(^[0-9]{1,2}\.[0-9]{1,2}$)|100$/.test(value)测试结果:0,1,99,100 true0.11,10.00,99.99 true-1,0.111,100.00 false好家伙,现在优快云字数少还被提示影响文章质量和创作推广了?那再放一段最近做的一个导入功能中判断百分原创 2022-03-18 17:41:13 · 7773 阅读 · 2 评论 -
手把手教你学会用vue实现元素拖拽移动+滚轮缩放功能
项目中做看板重构时遇到的开发需求,不能使用组件,乍一看感觉很头大,但实际上手做出来后还是小有成就的。直接进入正题:先创建一个简单的vue demo项目<template> <div class="drag"> <div class="back_box"> 这是一个背景 <div class="drag_box">这是一个蓝色可拖拽元素</div> </div> </div&g原创 2022-01-26 18:46:31 · 28822 阅读 · 40 评论 -
用原生promise特性替代async/await解决异步的方法
promise解决异步原创 2022-01-07 18:43:50 · 1515 阅读 · 0 评论 -
用promise.all搭配map方法解决异步问题
今天在项目中遇到一个异步问题,出现原因如下:我在getEnergeHouseDanhao这个函数中加入了一个请求,该函数是获取某机器单耗,但要请求四次分别去获取年单耗、月单耗、日单耗、小时单耗然而执行后因为请求是异步的,此时打印datas拿不到在请求中push进去的数组,在设置定时器才能拿到数组。然而我们无法确定接口的相应时间,用定时器解决显然是存在很大风险的。那么该如何解决类似的问题呢?可以使用promise.all解决异步。首先简单且通俗易懂地介绍一下promise.all是什么,具体原创 2021-12-30 15:54:04 · 3630 阅读 · 0 评论 -
对于Echarts实例化与销毁的一些运用
本篇文章比较浅显,主要写给想要快速直接上手数据可视化带Echarts图表项目的新人们。1、实例化图表:setOption(Object option)Object类型的参数 option,表示图表数据结构 ,形如:var option = { title: { text: "我的第一个ECharts图表示例" }, tooltip: {原创 2021-12-24 15:22:42 · 5280 阅读 · 0 评论 -
所有循环方法中,for()、for in、for of、forEach()、map(),哪个的速度最快
来源:juejin.im/post/5ea63f3ef265da47b177b4b6几种遍历方法中for执行最快,它没有任何额外的函数调用栈和上下文。但在实际开发中我们要结合语义话、可读性和程序性能,去选择究竟使用哪种方案。下面来看for , foreach , map , for…in , for…of五种方法现场battle。1、for我是最早出现的一方遍历语句,在座的各位需称我一声爷爷。我能满足开发人员的绝大多数的需求。// 遍历数组let arr = [1,2,3];for(let i转载 2021-12-13 18:32:01 · 2248 阅读 · 0 评论 -
深摸面试题(一):深入理解浅拷贝与深拷贝、时间对象(Date)的拷贝方法
这篇是深摸面试题的第一期,该系列主要是博主在干完手头上的工作or页面写完而数据接口还没给or项目稳定没需求时摸鱼看面试题,把一些较为简单的面试题深入渗透并且综合整理而开的专栏。因为主要是给自己未来复习用的,就不会花太多功夫排版了哈~1、首先说说浅拷贝与深拷贝的区别作者:Mike丶https://www.cnblogs.com/mikeCao/p/8710837.html深拷贝和浅拷贝最根本的区别在于是否真正获取一个对象的复制实体,而不是引用。假设B复制了A,修改A的时候,看B是否发生变化:原创 2021-12-13 17:41:43 · 1027 阅读 · 2 评论 -
vue组件独享守卫钩子函数参数详解(beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave)
test组件代码<template> <div class="test_box"> <p @click="go">测试组件内部守卫的作用,点击跳到HelloWorld</p> </div></template><script>export default { data() { return { } }, methods: { go() { this.转载 2021-11-30 17:57:32 · 784 阅读 · 0 评论 -
vue返回上一页(后退)的几种方法与区别
案例:从a页面=>b页面=>c页面,当前在c页面,执行某方法后可以如同按了浏览器后退键一样返回b页面方法:若使用vue-router,this.$router.go(-1)可以回到上一页this.$router.back()window.history.go(-1)区别①与②的区别是:go(-1): 原页面表单中的内容会丢失: 1. this.$router.go(-1):后退+刷新; 2. this.$router.go(0):刷新; 3. this.$route原创 2021-11-30 16:35:28 · 84609 阅读 · 0 评论 -
解决使用window.open()或window.location.href跳转后返回/后退原页面不能再度跳转的问题
使用window.open()搭配参数_self(新页面替换当前页面),或使用window.location.href跳转到新页面后,再点击后退到原页面,再重新进行跳转事件时,页面不仅没有进行跳转,且没有任何反应(控制台无错误信息)。说得笼统一点,这是因为第一次跳转时window.open()或window.location.href已经记录过一个要跳转的值了,跳转或后退到原页面时,该值没有被清空,再次执行事件时自然会没有反应。思路:定义一个全局变量记录window.open()打开的窗体如过该.原创 2021-11-24 13:50:12 · 13921 阅读 · 0 评论 -
vue实现仿阿里云官网的ace-view-fullColumn模块
案例:阿里云官网(https://www.aliyun.com)下方的“全面、专业、智能的解决方案”模块进行组件化自己实现出来的效果:gitee仓库:https://gitee.com/Yuzaki-Nasa/aliyun-ace-view-fullColumnvue实现:<template> <div class="common-fadein"> <div class="bg"> <div class="view-center原创 2021-11-16 22:01:11 · 1907 阅读 · 0 评论 -
vue实现图片预加载的几种方式
目的: 图片预加载能够使得用户在浏览后续页面的时候,不会出现图片加载一半导致浏览不流畅的情况。场景:在开发的过程,我们经常会遇到这样的要求,当鼠标hover上去的时候,更改菜单的背景。如果没有进行图片预加载的话,会出现闪烁。那么拥有1px的眼睛的设计师们不会放过你的。为什么会出现这张情况?因为hover的时候,图片才会去加载。那么我们现在来解决这个问题。首先我们要知道一点:如果图片在使用之前就已经请求过了,那么再次使用的时候,就不会再去请求(ps:图片路径一样)。下面讲实现方式:一、方法一项目打原创 2021-11-12 17:46:54 · 12274 阅读 · 0 评论