自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JS使用递归修改多层级数据的key

cheangeAreaData(data) { for (var i = 0; i < data.length; i++) { for (var j in data[i]) { if (j == "value") { data[i]["id"] = data[i].value; delete data[i].value; } if (j == "children") { if (data[i].chi...

2021-10-30 17:24:59 1357

原创 JS性能分析 (测试代码运行时间)

console.time("timer");for(var i=0;i<10000;i++){}console.timeEnd("timer");//timer: 0.274169921875ms

2021-07-31 16:36:09 395

原创 vue 常见面试问题

1. v-if和v-for哪个优先级更高?如果两个同时出现,应该怎么优化得 到更好的性能?<!DOCTYPE html> <html> <head> <title>Vue事件处理</title> </head> <body> <div id="demo"> <h1>v-for和v-if谁的优先级高?应该如何正确使用避免性能问题?</h1>

2021-07-30 09:21:00 159

原创 JS中数组操作方法整理

1.join()功能:将数组中所有元素都转化为字符串并连接在一起。var arr = new Array(3)arr[0] = "George"arr[1] = "John"arr[2] = "Thomas"document.write(arr.join("."))//George.John.Thomas2.reverse()功能:将数组中的元素颠倒顺序。var arr = new Array(3)arr[0] = "George"arr[1] = "John"arr[2] =

2021-07-22 14:41:40 131

原创 Vue $emit()不触发方法的原因

Vue $emit()不触发方法的原因1.事件名称不全是小写。事件名称要求全小写。2.不是父子关系。这里的父子关系是严格的父子关系,祖孙关系也不行。只能一层一层触发,这在写树形组件时,很容易掉坑里。3.父组件没有用 .sync修饰符.sync是vue中用于实现简单的“双向绑定”的语法糖,在平时的开发中是非常使用的。vue的prop是单向下行绑定:父级的prop的更新会向下流动到子组件中,但是反过来不行。可是有些情况,我们需要对prop进行“双向绑定”。这个时候,就可以用.sync来解决。...

2021-07-14 11:45:17 4054

原创 uni-app自定义头部导航

一、参考资料getMenuButtonBoundingClientRect()在小程序平台,如果原生导航栏被隐藏,仍然在右上角会有一个悬浮按钮,微信下也被称为胶囊按钮。本API用于获取小程序下该菜单按钮的布局位置信息,方便开发者布局顶部内容时避开该按钮。二、代码实现<template> <view class="content"> <view class="header"> <view :style="{ height: top }">&l

2021-07-06 17:21:37 1140

原创 vue-element 调用接口导出和导入xlsx表格

一、axios 修改header// 数据导入export function import(data) { return request.post(`${baseUrl}/import`, data,{headers:{ 'Content-Type': 'multipart/form-data',"Type-Data":'xlsx'}})}// 数据导出export function export(data) { return request({ url:`${baseUrl}/expo

2021-07-01 10:26:13 1034

原创 git中Please enter a commit message to explain why this merge is necessary.

请输入提交消息来解释为什么这种合并是必要的git 在pull或者合并分支的时候有时会遇到这个界面。可以不管(直接下面3,4步),如果要输入解释的话就需要:1.按键盘字母 i 进入insert模式2.修改最上面那行黄色合并信息,可以不修改3.按键盘左上角"Esc"4.输入":wq",注意是冒号+wq,按回车键即可...

2021-06-03 15:00:30 88

原创 Git 合并两个分支内容

 1,将开发分支代码合入到master中git checkout dev #切换到dev开发分支git pullgit checkout mastergit merge dev #合并dev分支到master上git push origin master #将代码推到master上 2,将master的代码同步更新到开发分支中merge方法:保证主干提交线干净(可以安全回溯)git checkout mastergit pu

2021-05-27 12:01:26 363

原创 js 加减乘除精度不准的问题

加法:function dcmAdd(arg1,arg2){ var r1,r2,m; try{r1=arg1.toString().split(".")[1].length;}catch(e){r1=0;} try{r2=arg2.toString().split(".")[1].length;}catch(e){r2=0;} m=Math.pow(10,Math.max(r1,r2)); return (accMul(arg1,m)+accMul(arg2

2021-05-26 16:17:22 352

原创 记一次git远端commit 回退

//查看版本号1.git log //本地回退版本2.git reset --hard 版本号//远端仓库强制回退3.git push origin +3.0:3.0

2021-05-26 11:22:10 183

原创 浏览器关闭弹框提示

mounted() { window.onbeforeunload = function(e) { e = e || window.event; // 兼容IE8和Firefox 4之前的版本 if (e) { e.returnValue = '关闭提示1111'; } // Chrome, Safari, Firefox 4+, Opera 12+ , IE 9+...

2021-05-14 10:35:11 396

原创 Vue-监听浏览器关闭

mounted() { // 监听浏览器关闭 window.addEventListener('beforeunload', e => this.beforeunloadHandler(e)) window.addEventListener('unload', e => this.unloadHandler(e)) }, destroyed() { window.removeEventListener('beforeunload.

2021-05-14 10:32:12 736

原创 检测浏览器是pc端还是移动端 是否微信浏览器

judgeTerrace() { //检测平台 let p = navigator.platform; this.system.win = p.indexOf("Win") == 0; this.system.mac = p.indexOf("Mac") == 0; this.system.x11 = (p == "X11") || (p.indexOf("Linux") == 0); this.s...

2021-05-13 16:05:00 347

原创 input验证

1. 身份证 let code = this.data.code//身份证号码 let reg = /^[1-9]{1}[0-9]{14}$|^[1-9]{1}[0-9]{16}([0-9]|[xX])$/; if (!code || !code.match(reg)) { console.log('身份证号码不正确') return false }2.手机号 let phone = phone if(!(/^1[34578]\d{9}$/.test(phone))){

2021-04-22 09:30:11 117

原创 Vue页面关闭时调用接口

mounted() { // 监听浏览器关闭 window.addEventListener('beforeunload', e => this.beforeunloadHandler(e)) window.addEventListener('unload', e => this.unloadHandler(e)) }, destroyed() { window.removeEventListener('before

2021-04-13 16:12:43 5118 2

原创 vue自定义微信分享

1.安装npm install weixin-js-sdk2.在页面引入 import wx from 'weixin-js-sdk';3.调用方法getShareInfo() { wxShare().then(res => {//获取微信appid接口 console.log(res) //拿到后端给的这些数据 let appId = res.data.app_id; let timestamp = res.data.timestamp;

2021-04-13 15:59:23 532 2

原创 二维数组去空

for (var i = 0; i < this.submitData.length; i++) { for (var j = 0; j < this.submitData[i].length; j++) { if (this.submitData[i][j] == 0) { this.submitData[i].spli...

2021-04-13 15:49:02 138

原创 rem自适应布局

//100px = 1remwindow.onload = function () { sizeWidth()}window.onresize = function () { sizeWidth()}function sizeWidth () { // 获取当前屏幕的宽度 var screenWidth = document.querySelector('html').offsetWidth // 基础值 var baseSz = 100 // 设计稿的宽度 va

2021-04-13 15:41:54 60

原创 八卦时钟

css<style> * { margin: 0; padding: 0; background: #669; } html, body { width: 100%; height: 100%; overflow: hidden; } #clock { position: relative; width: 100%

2021-03-15 14:52:55 746

原创 js 毫米秒转化时分秒并倒计时

let mss = 654615000 function formatDuring(mss) { let days = parseInt(mss / (1000 * 60 * 60 * 24)); let hours = parseInt((mss % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); let minutes = parseInt((mss % (1000 * 60 * 60)) / (100..

2021-03-15 14:45:01 450 1

原创 邮箱联想

html<body> <input type="text" list="input_list" name="text" placeholder="请输入邮箱" /> <datalist id="input_list"></datalist></body>js<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></scri

2021-03-15 14:40:21 133

原创 判断是否微信浏览器

//平台、设备和操作系统 let system = { win: false, mac: false, xll: false, ipad: false }; //检测平台 let p = navigator.platform; system.win = p.indexOf("Win") == 0; system.mac = p.indexOf("Mac") == 0; syste...

2021-03-15 14:37:23 156

原创 vue数据更新页面视图不更新

1.视图不更新情况一数组数据变动:我们使用某些方法操作数组,变动数据时,有些方法无法被vue监测,有些可以push()pop()shift()unshift()splice()sort()reverse()filter()concat()slice()这些不会改变原始数组,但总是返回一个新数组。当使用非变异方法时,可以用新数组替换旧数组Vue 不能检测以下变动的数组:① 当你利用索引直接设置一个项时,vm.items[indexOfItem] = newValue② 当你修改数

2021-03-15 14:35:12 311

原创 VUE - history模式打包后在服务器上页面空白的问题

history模式打包后在服务器上页面空白的问题解决方法 ----- 在base添加 /服务端文件名/

2021-03-15 14:31:05 305

原创 js自定义多选方法

choosely(n, value) { if (this.chooseAfterValue.indexOf(value) != -1) { this.chooseAfterValue.splice(this.chooseAfterValue.indexOf(value), 1) } else { this.chooseAfterValue.push(value) }},

2021-03-15 14:27:57 255

原创 JSON.parse报错问题

Uncaught SyntaxError: Unexpected token o in JSON at position 1是一个在使用JSON.parse方法时经常会遇到的报错那么问题来了报错信息中的token o代表了啥???首先必须记住,JSON.parse的第一个参数是字符串!!!所以上面的转化自然是[object object]测试一下其他数据就知道了切记我们在使用JSON.parse方法的时候,请先用JSON.stringify方法JSON.parse(JSON.stringify

2021-03-15 14:20:59 2722 1

原创 echarts动态数据不显示

echarts动态数据不现示由于ajax返回前端的数据为一个json字符串,而echart的data需要的是一个数组类型的数据,如果我们在后台将数据组成“[‘xxx’,‘aaa’,‘bbb’]”传给前端echart,echart是无法展示的,所以我们需要在前端将数据拆分放入数组中再传给echart就可以展示了。 var strs1 = new Array(); //定义一数组 var strs2 = new Array(); //定义一数组 strs1 = res.data.game_name

2021-03-15 14:17:19 1845

原创 git学习笔记

git学习笔记设置用户 $ git config --global user.name "Your Name" $ git config --global user.email "email@example.com"初始化$ git init提交本次更新到仓库$ git add .$ git commit -m “描述”查看仓库状态$ git status查看修改的地方$ git diff readme.txt查看文件的修改日志$ git log返回到上一次修改的状

2021-03-15 14:11:31 40

转载 前端页面布局概述

前言现在,我们被称为前端工程师。然而,早年给我们的称呼却是页面仔。或许是职责越来越大,整体的前端井喷式的发展,使我们只关注了js,而疏远了css和html。其实,我们可能经常在聊组件化,咋地咋地。但是,回过头来思考一下,如果你看到一张设计稿的时候,连布局都不清不楚,谈何组件化呢。所以,我们需要在分清楚组件之前,先来分清楚布局。废话说了这么多,只是想告诉你,布局这个东西真的很重要。本篇内容概括了...

2020-03-28 10:56:20 409

原创 常用css样式整理

常用css样式整理1. css 文本显示一行,超出显示…//一行width:100px;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;word-break: break-all; //两行 当文本所在的盒子太高时,注意设置line-height,//否则肯能会出现第三行显示一半的情况width:10...

2020-03-28 10:22:57 142

空空如也

空空如也

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

TA关注的人

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