自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 解决定时器导致页面卡顿、卡死的问题

在项目中有时需要使用定时器,去不断刷新数据重载部分页面,长时间使用会导致线程占用和内存泄漏,导致页面卡顿、卡死的现象。网上查找过不少资料,无法根本解决此问题,下面介绍本人实践过的有效方法:var timerQ = null //首先可以全局定义一个定时器//清理定时器的公用方法clearTimerQ(){ try { window.clearInterval(timerQ) } catch (error) {} window.timerQ = null},//发送交易获

2021-06-06 16:13:08 12496 6

原创 仿蚂蚁基金效果AntV的蚂蚁数据可视化F2折线图、买卖点和自定义标签(注释详尽)

<canvas id="lineCanvas"></canvas>var chart = chart1 = new F2.Chart({ id: 'lineCanvas', pixelRatio: window.devicePixelRatio});var finData = [{ "date": "2010-01-10", "type": "能源", "value": 99.9 }, { "date": "2010-01-10", "type": "金属", "va

2020-11-06 12:58:33 3195

原创 echarts饼图实例(带注释,超详细)解决formatter无法处理数据的问题 解决图标自适应大小的问题

大家在使用echarts饼图时,经常遇到formatter无法处理精确数据的情况,怎么办呢?建议在外面自定义或处理好数据pieData,然后在formatter里面使用for循环遍历//首先建议在外面自定义或处理好数据pieData,然后在formatter里面使用for循环遍历 var chartPie = echarts.init(document.getElementById("charPie")); var option = { backgroundColor: "#ffffff"

2020-09-13 17:20:39 4098

原创 less和sass 自动计算宽高属性,盒子垂直居中方法,样式覆盖(权重)关键字important

大家好,给大家推荐一个less和sass中非常好用的属性,可以自动计算宽高,代码如下:(以less为例)下面展示一些 内联代码片。@w200:200/75rem;.product-name{ width: calc(100% - @w200); font-size: 28/75rem; position: absolute; left: 0; top: 50%; transform: translate(0,-50%); color:red!im

2020-09-13 16:56:07 4517

原创 tab切换echarts图表引发的问题 显示不全或错乱显示 在其他tab显示

在项目中曾遇到过这样的问题:多个tab切换echarts图表引发的问题,显示不全或在另一个tab内显示,网上很多说用v-if,试验了多次均无效果,后来使用setTimeout延时就可以了。mainTab(id) { if (id === "1") {//第1个tab栏 setTimeout(() => { this.echartsPie()//饼图 },500) }else if (id === "2") {//第2个tab栏 se

2020-07-02 15:52:05 3276

原创 JSON报错JSON转换失败JSON转译失败(快速解决方法,附详细注释)

解决JSON转译报错 本地缓存自定义过期时间由于localStorage暂未定义过期时间,需要自定义过期时间,实现原理非常简单:在存储数据的同时,记录下当时的时间戳,在读取数据时,读取当前时间戳进行对比即可。JSON转译失败处理var str=""try{ str=JSON.stringify({data:value,time:curTime})//使用try catch方法,防止因JSON转译失败引起的报错,失败后会自动进入catch,可自定义处理失败结果 }catch (e){

2020-06-28 12:47:24 7851

原创 vue项目同时使用sass和less

有时因为代码需要,需要同时使用sass和less,现将本人的一点经验心得分享给大家。1.首先建议安装淘宝镜像,如已安装可跳过命令:npm install -g cnpm --registry=https://registry.npm.taobao.org2.如项目中已有sass,需要安装less,执行如下代码:cnpm install less --savecnpm install less-loader@4.1.0 --save注意:2020年以后安装的less版本均为6.0以上,安装后可能会

2020-06-10 12:37:25 6250 1

原创 解决elementUI表格的疑难杂症,排序显示错乱的问题

使用自定义排序方法 :sort-method=“(a,b)=>{return a.percentage - b.percentage}” sortable。查询elementUI官方文档发现,列表排序会使用elementUI默认的排序,可能与开发者想要的效果不一致。

2024-07-12 16:16:13 978

原创 element upload文件上传第二次上传失败的解决方法

【代码】element upload文件上传第二次上传失败的解决方法。

2024-02-27 11:39:33 1123

原创 element表单自定义校验失效的问题+如何自定义校验手机号

【代码】element表单自定义校验失效的问题+如何自定义校验手机号。

2024-02-27 11:21:32 565

原创 通过js下载文件到本地的方法a标签

【代码】通过js下载文件到本地的方法a标签。

2023-06-16 11:43:17 1574

原创 获取当前页面的字体大小,可换算成rem

该方法是window的方法,可以直接使用,主要用来获取元素当前的样式信息,可直接获取后转换成页面的rem,并在图表或其他地方使用。

2023-06-15 16:07:25 1275

原创 处理img标签url路径错误,图片空白或一闪一闪的问题

如果不加.once,img会一直循环加载图片(出现空白或一直在闪烁),在error事件后加上.once,即只触发一次,可使用自定义图片显示。开发项目时经常遇到img标签图片的url打不开的情况,导致标签一直空白或一闪一闪的问题,不必焦虑,教你一招轻松解决以上问题!

2023-04-01 18:55:30 2625

原创 微应用乾坤框架,整合多种项目真香(持续更新)

loadMicroApp 手动加载子应用 也类似于 React.js 的 render 函数和 Vue.js 的 new Vue(),只不过更自由了。3.增量升级:在面对各种复杂场景时,我们通常很难对一个已经存在的系统做全量的技术栈升级或重构,而微前端是一种非常好的实施渐进式重构的手段和策略。start 启动主应用 类似于 React.js 的 render 函数和 Vue.js 的 new Vue()4.独立的运行时:每个微应用之间状态隔离,运行时状态不共享。

2023-01-31 20:30:00 2072

原创 echart图表 和弦关系图 悲惨世界人物关系图的使用及配置项 修改旋转角度 顺时针旋转

写好配置项后即可看到效果,因数据量大仅提供部分测试数据演示,最终的效果和echart官网类似。使用echart图表时,偶尔会遇到使用和弦关系图的问题,这里举例和弦关系图的配置。

2023-01-29 14:31:40 2239

原创 处理多层级表单的提交,每个表单单独校验并收集表单数据

相信大家偶尔会遇到多层表单的情况,有时需要点击最外层的提交按钮,将每个tab栏下的表单全部校验并提交数据。这里抛砖引玉,简单介绍一下3层的表单处理思路,希望对你有所帮助。

2023-01-18 10:37:07 1486

原创 解决echart图表不显示的问题,为图表添加点击事件,销毁图表

使用echart图表时,代码基本正确但图表却一直无法显示。

2023-01-09 10:13:37 2229

原创 解决请求数据量过大,分批多次请求的问题

相信大家偶尔会遇到某个请求数据量过大,需要分批多次请求的问题,这里举例按小时分批多次请求:最后,原创不易,如本文对您有所帮助,麻烦点赞收藏一下谢谢!

2023-01-08 17:11:43 3022

原创 openlayer自定义悬浮框overlay及其跨地图边界显示不全的解决方案

openlayer自定义悬浮框overlay及其跨地图边界显示不全的解决方案

2022-07-03 22:09:55 2375

原创 解决commit调用失败(短时间多次调用)的问题setTimeout

vuex同步异步的巧妙运用,解决for多次调用的问题

2022-07-03 21:42:08 1920

原创 vscode绿色、护眼色,vue自动格式化配置参考

{ "settings": { "workbench.colorTheme": "Atom One Light", "workbench.colorCustomizations": { "[Atom One Light]": { "editor.background": "#C7EDCC", "sideBar.background": "#C7EDCC", "activityBar.background": "#C7EDCC",

2022-05-10 22:17:04 5663 1

原创 vue项目webpack打包优化体积优化,打包体积减少200kb到4Mb

1.压缩图片应尽可能地压缩项目中的图片,或使用svg矢量图、雪碧图、webp图片(此种图片仅兼容谷歌和opera浏览器,但图片的体积更小)等小体积的图片,达到减少打包体积的目的。2.路由懒加载可以在路由配置里,使用require引入页面或组件实现路由懒加载,每个页面大约可以减少10—50kb的打包体积,示例如下:3.移除源代码,替换压缩后的源码修改vue.config.js配置文件,提取公共方法或资源,打包时删除源代码,减少打包后的体积;在html使用外部链接引入相关源代码,按此方法修改,vue大

2022-02-20 21:15:52 7847

原创 vscode编辑器搜索小技巧

`vscode`是大家常用的编辑器,这里分享一些常用的搜索技巧,希望可以帮助大家加速代码查找和开发进度。一. 搜索目录下的指定文件如果想要搜索某个文件目录下的指定文件,该如何配置呢?例如想搜索H5项目下所有目录的vue文件,查找pageId这个字段如果想同时搜索所有目录下的vue和js文件,那么可以将files to include改成./H5/**/*.vue,./H5/**/*.js,双*号代表多层目录,单个*号代表一层目录,选择的文件类型用,分隔。当然,vscode搜索非常强大,还...

2021-11-23 16:20:44 5612

原创 仿蚂蚁金服AntV框架蚂蚁数据可视化F2 基金折线图、对比图(包含买卖点、自定义标签等,注释详尽)

大家好,这次使用的是AntV的蚂蚁数据可视化F2框架,类似于蚂蚁基金的效果,包含买卖点、自定义标签等,代码如下:F2框架参考网址:https://antv-f2.gitee.io/zh/examples/line/multiple#customize-tootlip可以进入该网址,直接复制下方代码进行调试或观察。<canvas id="container"></canvas>import F2 from '@antv/f2';const data = [{ dat

2021-07-15 14:52:36 2823

原创 仿蚂蚁金服AntV框架蚂蚁数据可视化F2饼图(注释详尽)

大家好,这次使用的是AntV的蚂蚁数据可视化F2框架,类似于蚂蚁基金的效果,代码如下:F2框架参考网址:https://antv-f2.gitee.io/zh/examples/pie/donut#basic<canvas id="pieCanvas"></canvas>import F2 from '/utils/f2';const data = [{ name: '类型1', percent: 59.12, a: '1'}, { name: '类型2

2021-07-14 11:22:28 2951

原创 仿蚂蚁金服AntV框架蚂蚁数据可视化F2条形图、柱状图(注释详尽)

大家好,这次使用的是AntV的蚂蚁数据可视化F2框架,类似于蚂蚁基金的效果,代码如下:F2框架参考网址:https://antv-f2.gitee.io/zh<canvas id="barCanvas"></canvas>import F2 from '@antv/f2';const data = [{ year: '1951 年', sales: 38}, { year: '1952 年', sales: 52}, { year: '1956 年

2021-07-12 15:38:11 3636

原创 图片无法显示 base64图片无法显示 图片体积过大无法显示

图片体积过大在vue项目中,经常使用webpack或其他打包工具,但因打包工具对图片的引入经常有大小限制,所以导致图片无法加载,一般来说,图片超过20kb就容易无法显示,此时应使用require引入方法显示图片如果是背景图图片,可以直接使用style添加背景图片实现<div class="nav" :style="'background-image: url(' + bgl + ');'"></div>export default { data() { retu

2021-06-06 15:50:33 6571

原创 vue源码深入分析,步骤分层次解读,vue点击事件详解

大家好,在网上看到过很多vue源码的解析,大多是copy和摘抄的,少有自己的理解,所以下决心花时间整理一遍自己对vue源码的理解。我只是一个普普通通的码农,如果本文有写的不对之处,希望各路大神指正,谢谢!vue版本:2.5.17源代码相关链接:https://cdn.bootcdn.net/ajax/libs/vue/2.5.17/vue.js首先,本人采取的是最简单的debugger调试方法,按照步骤与逻辑分层次解析vue源码,我认为这是最快、最简单、也是最有效的方法。本文使用的vue调试代码如下:

2021-01-07 16:53:28 2405 1

原创 vue源码深入分析,步骤分层次解读,vue初始化render篇(包含vue双向绑定原理和新旧节点对比)

大家好,在网上看到过很多vue源码的解析,大多是copy和摘抄的,少有自己的理解,所以下决心花时间整理一遍自己对vue源码的理解。我只是一个普普通通的码农,如果本文有写的不对之处,希望各路大神指正,谢谢!vue版本:2.5.17源代码相关链接:https://cdn.bootcdn.net/ajax/libs/vue/2.5.17/vue.js首先,本人采取的是最简单的debugger调试方法,按照步骤与逻辑分层次解析vue源码,我认为这是最快、最简单、也是最有效的方法。本文使用的vue调试代码如下:

2020-12-27 11:46:57 2255 1

原创 vue源码深入分析,步骤分层次解读,vue初始化(一)

大家好,在网上看到过很多vue源码的解析,大多是copy和摘抄的,少有自己的理解,所以下决心花时间整理一遍自己对vue源码的理解。我只是一个普普通通的码农,如果本文有写的不对之处,希望各路大神指正,谢谢!vue版本:2.5.17源代码相关链接:https://cdn.bootcdn.net/ajax/libs/vue/2.5.17/vue.js首先,本文使用的vue调试代码如下:<div id="main"> <h1>count: {{times}}</h1>

2020-12-20 16:50:44 2215

转载 最详尽的 JS 原型、js原型链终极详解(第三篇)

七. 函数对象 (复习一下前面的知识点)所有函数对象的proto都指向Function.prototype,它是一个空函数(Empty function)Number.__proto__ === Function.prototype // trueNumber.constructor == Function //trueBoolean.__proto__ === Function.prototype // trueBoolean.constructor == Function //true

2020-11-06 12:48:10 2084

转载 最详尽的 JS 原型、js原型链终极详解(第二篇)

四. protoJS 在创建对象(不论是普通对象还是函数对象)的时候,都有一个叫做__proto__ 的内置属性,用于指向创建它的构造函数的原型对象。对象 person1 有一个 __proto__属性,创建它的构造函数是 Person,构造函数的原型对象是 Person.prototype ,所以:person1.__proto__ == Person.prototype请看下图:根据上面这个连接图,我们能得到:Person.prototype.constructor == Person;

2020-11-03 15:08:40 2064

转载 最详尽的 JS 原型、js原型链终极详解(第一篇)

一. 普通对象与函数对象JavaScript 中,万物皆对象!但对象也是有区别的。分为**普通对象和函数对象,**Object 、Function 是 JS 自带的函数对象。下面举例说明var o1 = {}; var o2 =new Object();var o3 = new f1();function f1(){}; var f2 = function(){};var f3 = new Function('str','console.log(str)');console.log(ty

2020-11-02 16:38:26 2149 1

原创 百分比转译方法(包含特殊处理、报错处理)

/** * 百分比转译方法,默认保留小数点后两位 * @author xxx * @param d 传入的字符串或数字 * @param s 返回的数字最后添加的字符,默认"%" * @param num 返回的数字默认保留几位小数 */const newPercent = function (d, s = "%", num = 2) { if (window.isNaN(Math.round(d))) {//数据为NaN(特殊情况) return "--"

2020-09-13 17:29:57 2210

原创 金额转换成大写和简称的方法

/** * 获取金额的中文大写或简称的方法 * @author xxx * @param money 传入的金额字符串 * @param simple 为true代表金额简称,false为繁体字大写,默认为false */const getMoneyUpper = function (money, simple = false) { if (!(Object.prototype.toString.call(money) == '[object Number]' || Ob

2020-09-13 17:28:17 2239

空空如也

空空如也

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

TA关注的人

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