自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue基础知识总结及测试遇到的前端bug分析

vue基础知识总结、测试遇到的前端bug分析原因

2022-04-03 13:19:35 1849

原创 前端项目首屏加载优化--页面初始进来加载速度慢的解决方案

前端页面初始进来加载速度慢的解决方案

2022-03-28 21:24:57 7966

原创 vue自定义指令-对输入框数字的限制,输入框的数字前面不能输入多余的0,例如00123, 00.12类型的数字

限制数字前面不能输入多余的0,例如00123 00.12import Vue from 'vue'Vue.directive('number', { bind(el) { el.onkeyup = () => { if (el.value) { if (parseInt(el.value) == parseFloat(el.value) && !el.value.includes('.')) { if (paeseI

2022-03-25 16:35:59 2342

原创 nginx 部署前端项目,不缓存html文件,项目发版后,不用手动刷新页面

nginx 部署前端项目,不缓存html文件,项目发版后,不用手动刷新页面location / { expires 1h; root /home/test/vue/dist/; index index.html index.htm; if ($request_filename ~* .*\.(htm|html)$) ## 配置页面不缓存 { add_header Cache-Control "private, no-store, no-cache, must-revalidate

2022-03-25 15:18:07 6468

原创 Vue开发规范细节

Vue开发规范细节一、必要的1、组件名为多个单词组件名应该始终是多个单词的,根组件 App 以及 、 之类的 Vue 内置组件除外。这样做可以避免跟现有的以及未来的 HTML 元素相冲突,因为所有的 HTML 元素名称都是单个单词的。例如:Vue.component(‘todo-item’, {// …})export default { name: ‘TodoItem’, // … }2、组件数据组件的 data 必须是一个函数。当在组件中使用 data property 的时候

2021-02-10 16:02:16 966

原创 Vue 更改keep-alive源码,满足条件性缓存(多个页签之间切换缓存,关闭页签重新打开不缓存)

应用场景当系统打开多个页签时,多个页签之间切换去做缓存,关闭页签重新打开该页签不缓存。解决方案更改 vue keep-alive源码1、制造一个唯一的key值,在路由参数里面加一个时间戳1.1 因keep-alive 使用组件名称name值作为唯一的key值去做条件缓存,但是该项目因书写不规范导致组件的name值不是唯一的。在路由的参数 里面增加一个时间戳 // 当点击系统左侧菜单的时候加时间戳 select(url) {

2021-02-07 16:47:31 1075 1

原创 Vue:keep-alive的用法总结

什么时候用到keep-alive如果没有缓存,每点击一次导航,内容区就会创建一个组件,该组件会经历整个生命周期,每点击一次,就会创建一个组件,比较浪费性能,这时,我们就要考虑到是否能将点击过的已创建的组件进行缓存,当再次点击已访问过的组件时,这时,就会从缓存中获取该组件,而不会重新创建,这就用到keep-aliveProps:include - 字符串或正则表达式。只有名称匹配的组件会被缓存。exclude - 字符串或正则表达式。任何名称匹配的组件都不会被缓存。max - 数字。最多可以缓存多

2020-11-11 18:07:43 264

原创 Vue混入mixins的简单用法

比如说,你有一个方法好多文件都会用到,但你不想在各个文件中都写这个方法,这个时候你就可以用混入建一个独立的专门写混入的文件夹mixins在mixins文件及里面写一个index.js文件index.js文件中写入你的混入。一个index.js中可以写多个混入,const formatterNum = { methods:{ formatterNum(num) { //正常写你的方法 } }}//如果你想在这个文件中再写另一个混入,那就再定义一个const formatte

2020-09-30 16:58:13 270

原创 vue自定义指令:金额保留两位小数并且每三位逗号分割

vue自定义指令:金额保留两位小数并且每三位逗号分割可以专门建一个filter.js文件,统一做vue的一些自定义指令,方便以后维护。建的filter.js在main.js中引用。当然你直接在main.js里写也没有问题,只是后期不好维护。这里使用filter.js文件首先在filter.js中引入Vueimport Vue from 'vue'//保留两位小数并用逗号分隔Vue.filter('sumFilter', function(num) { if(num) { if(!isNaN

2020-09-30 16:11:40 1711

原创 vue 子组件会接收不同的数据类型,数据设置默认值的写法

vue prop 会接收不同的数据类型,这里列出了 常用的数据类型的设置默认值的写法。其中包含: Number, String, Boolean, Array, Function, ObjectrefAge: { type: Number, default: 0},refName: { type: String, default: ''},hotDataLoadi...

2020-02-26 14:52:05 2563

原创 js异步执行顺序

将同步代码放入setTimeout中,变成异步,则和ajax中的回调同为异步,则按照异步的方式来排列执行顺序。由此引入异步之间的执行顺序问题!首先常见的异步一般有:ajax可以异步也可同步、回调、setTimeout系列、事件绑定。 而es6中的新增的promise、async/await。按照js的执行顺序,先执行同步,再执行异步。那么上面这些异步的执行之内该如何执行呢?首先了解一下宏...

2020-02-26 14:29:19 370

原创 前端性能优化处理方法---懒加载

懒加载1.什么是懒加载懒加载也叫延迟加载,指的是在长网页中延迟加载图像,是一种很好优化网页性能的方式。用户滚动到它们之前,可视区域外的图像不会加载。这与图像预加载相反,在长网页上使用延迟加载将使网页加载更快。在某些情况下,它还可以帮助减少服务器负载。常适用图片很多,页面很长的电商网站场景中。2.为什么要用懒加载能提升用户的体验,不妨设想下,用户打开像手机淘宝长页面的时候,如果页面上所有的图...

2018-12-07 08:26:33 541

原创 JS 的线程、事件循环、任务队列简介

JS 是单线程的,但是却能执行异步任务,这主要是因为 JS 中存在事件循环(Event Loop)和任务队列(Task Queue)事件循环:JS 会创建一个类似于 while (true) 的循环,每执行一次循环体的过程称之为 Tick。每次 Tick 的过程就是查看是否有待处理事件,如果有则取出相关事件及回调函数放入执行栈中由主线程执行。待处理的事件会存储在一个任务队列中,也就是每次 Tic...

2018-12-04 20:23:44 217

原创 vue Router 路由守卫之beforeEach

首先使用 router.beforeEach 注册一个全局前置守卫:const router = new VueRouter({ ... }) router.beforeEach((to, from, next) => { // ...})当一个导航触发时,全局前置守卫按照创建顺序调用。守卫是异步解析执行,此时导航在所有守卫 resolve 完之前一直处于 等待中。每个守卫...

2018-11-29 09:38:28 794

原创 jquery ajax,axios,fetch优缺点及它们的区别

jquery ajaxjquery ajax实例$.ajax({ type: 'POST', url: url, data: data, dataType: dataType, success: function () {}, error: function () {}});$.ajax的参数描述url 必需。规定把请求发送到哪个 URL。data...

2018-11-27 16:31:25 425

原创 localStorage、sessionStorage、Cookie的区别和共同点

webstoragewebstorage是本地存储,存储在客户端,包括localStorage和sessionStorage。localStoragelocalStorage生命周期是永久,这意味着除非用户显示在浏览器提供的UI上清除localStorage信息,否则这些信息将永远存在。存放数据大小为一般为5MB,而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信。sessionSt...

2018-11-27 14:36:12 245

原创 localStorage使用实例-进入显示广告,点击关闭之后,刷新网页不再出现

仿一下京东官网顶部的广告关闭,效果为第一次进入官网会出现广告,然后点击关闭,刷新网页不会再显示广告,但是当清除localStorage存入的数据,刷新网页会再显示广告。html代码<div class="header"> <div class="header-a"> <a href=""></a>

2018-11-27 14:30:03 1005

原创 基于nodejs爬虫

爬接口数据var https = require('https');https.get('https://api.readhub.cn/topic?lastCursor=76823&pageSize=20',function(res,req){var html=''; res.on('data',function(data){ html+=data; ...

2018-11-04 20:59:34 614

原创 nodejs express 框架 上传图片,上传头像问题

上传图片总结:必须 安装’multer’模块Npm I multer –S(手动输入小写)第一步App.js 里面 挂载index路由之前写入app.use(express.static(path.join(__dirname, 'public')));var multer = require('multer'); //删除图片临时放在'/tmp/'app.use(multer({...

2018-11-02 17:52:33 1150

原创 js继承 - 构造函数继承,call apply改变this指向 原型链继承,混合继承

1、构造函数继承function Person(name,age){ this.name = name; this.age = age; this.run = function(){ console.log('跑....'); } } function YPerson(name,age,color){ this.method = Person;//th...

2018-10-21 21:20:40 746

原创 js闭包

js闭包(js的特殊之处在于 函数内部可以直接读取全局变量,而在函数外部无法读取函数内部的变量,那在函数外部怎么读取到函数内部的变量呢?这就用到了闭包)闭包的特点:1、读取函数内部的变量。2、让这些变量始终保存在内存当中闭包的两个典型的应用场景:1、使用一个函数访问另一个函数的局部变量。(函数作为返回值)2、通过回调函数使用一个函数中的局部变量。(函数作为参数被传递)第一种应用场景...

2018-10-21 20:13:49 163

原创 js数组中的方法

js数组中的方法1、push和poppush方法用于在数组的末端添加一个或者多个元素,并返回添加因元素后的数组长度,push方法会改变原数组pop方法用于删除数组中的最后一个元素,并返回该元素,会改变原数组,对于空数组,使用pop方法不会报错,返回undefined 用法:arr.pop();小括号内不写参数。push与pop结合使用就构成了“先进后出”栈结构(stack)(先进...

2018-09-24 19:35:18 378

原创 js九宫格拖拽交换

js九宫格拖拽交换以下为代码内容<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>九宫格拖拽</title> </head> <style ty

2018-09-14 12:32:43 1330

原创 js淡入淡出式轮播(京东轮播图)和无缝轮播(淘宝轮播图)

js淡入淡出式轮播(京东轮播图)<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>淡入淡出式轮播(京东轮播图)</t

2018-09-12 23:06:10 1767

原创 JS倒计时

倒计时<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> &am

2018-09-01 21:07:58 296

原创 CSS3 中3D转换--旋转正方体,滚动照片墙的写法

首先给父元素加两个属性,把父元素变成3D空间。 (1)transform-style:preserve-3d; (观察的场所 3D空间) (2)perspective:1000px;(近大远小–景深prespective,元素距离观察点的距离也就是物体和眼睛的距离,通常在900-1200之间。)然后利用3D转换的属性 transform<!DOCTYPE html&gt...

2018-08-16 19:44:17 3704

原创 移动端的界面中滚动条的显示

移动端的界面中滚动条的显示第一种方式 将html和body的高度设置为100%;使他与屏幕的高度相同。html{height: 100%;}并将body设置为弹性 body{height:100%;display: flex; flex-direction: column;} flex-direction: column;使主轴方向为垂直方向,起点在上沿。)header设...

2018-08-13 21:36:28 1655

原创 宽高自适应

宽高自适应 在网页布局的时候经常要定义元素的宽和高,但很多时候我们希望元素的大小能够根据窗口的大小进行自动调整,这就用到了自适应。宽高自适应的优点: 元素自适应在网页中是非常重要的,它能够使得网页更加灵活,可以适应在不同的设备不同的窗口和不同的分辨率下显示。1、宽度自适应 元素宽度设置为100%;(块元素的宽度默认为auto)2、高度自适应 (1)元素高度自适应窗口的高度 设...

2018-08-12 21:31:30 833

原创 表单高级和表格高级

关于表单 1、表单字段集<fieldset></fieldsed>功能相当于一个方框,在字段集中可以包含文本和其他元素。 该元素用于对其它的元素进行分组,。 fieldset 元素可以嵌套,在内部可以设置多个fieldset 对象。2、字段集标题<legend></leg

2018-08-12 20:36:16 504

原创 弹性盒模型

flex是flexinle Box 的缩写,是弹性布局。 任何容器都可以指定flex布局:display:flex设置了flex布局后,当前容器内子元素的float,clear,vertical-align属性将全部消失。 采用flex布局后的元素成为flex容器,它所有的子元素自动成为容器成员,称为容器项目。 容器默认存在两根轴:水平的轴(main axis)和垂直轴(竖轴/侧轴)(c...

2018-08-12 11:58:59 814

空空如也

空空如也

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

TA关注的人

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