自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 防抖的三种形式

时间戳实现当触发时间相加大于500毫秒时执行触发和执行同时无法保证最后一次触发一定执行function throttle(callback, duration = 500) { let prevTime = Date.now() return function () { let now = Date.now() if (now - prevTime > duration) { callback() prevTime = now }

2021-07-06 23:21:31 183

原创 p命名空间和c命名空间

p命名空间实体类中必须有set方法;实体类中必须有无参构造器(默认存在);导入p命名空间注入方式依赖。<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" xmlns:

2020-10-23 11:26:15 417

原创 java继承与方法重写重载

继承java使用 extends 和 implements 这两个关键字来实现继承.extends 一个子类只能拥有一个父类,只能继承一个类。implements 可以同时继承多个接口,多个接口逗号隔开。public class Animal { private String name; public Animal(String myName) { name = myName; } Animal() { System.out.p

2020-09-25 14:19:00 469

原创 nginx安装与配置

安装官网复制 yum 源使用 vim 创建 etc/yum.repos.d/nginx.repo文件,将下面的内容复制到文件中。[nginx]name=nginx repobaseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/gpgcheck=0enabled=1将 2 中的文件 OS 改为 centos, OSRELEASE 改为 7 保存(centos7对应自己服务器的系统)。yum install nginx安装n

2020-06-12 22:13:15 123

原创 ajax封装

encodeURIComponent实现了对一些特殊字符的编码,传到后台需后台解码,可以根据自己的业务只对一些特殊的接口做编码。post请求头Content-Type一般有json和form两种格式,分别以json和键值对格式传给后端。function axios({ url, method = 'GET', params, data = {}, header, success,...

2020-05-07 17:44:50 106

原创 nodejs请求头跨域问题

有的时候,我们将token放在header中传给后端,发现前端报错:Request header field token is not allowed by Access-Control-Allow-Headers in preflight response.这是应为请求头跨域的缘故,可以在后端代码跨域中加上 res.header(“Access-Control-Allow-Headers”,...

2020-04-12 18:56:12 435

原创 js发布订阅模式

发布订阅模式广泛用于js中,从早期的jq事件池的机制到后面vue的eventbus都是典型的发布订阅模式。在该模式中,发布者向事件池中发送或移除事件,由事件池通知订阅者。这样大大降低了代码之间的耦合度,使得代码更利于维护。这一点也是和观察者模式最大的区别,观察者是发布者直接发送消息给订阅者,是强耦合的。一个简单的发布订阅模式let subscribe = function () { c...

2020-03-31 20:30:23 238

原创 node实现token验证及vue前端获取用户信息权限控制

基本思路用户登录校验成功后服务端会根据 用户信息和时间 生成token,并将其和用户的信息一起发送给客户端。客户端将token存到localStorage,将用户的信息挂载到vue实例下,每次发送请求或进行操作可以通过用户信息判断其是否有权限。客户端每次发送请求都将token携带在请求头中传给服务端。服务端每次接收请求验证token的有效性和时间是否过期,如无法验证通过,返回错误的信息给...

2020-03-26 11:43:37 1357 2

原创 vue中使用echart及常见问题

基本使用安装npm install echarts创建实例(实现一个简单的柱形图)<!--为ECharts准备一个具备大小(宽高)的Dom--><div id="main" style="width: 600px;height:400px;"></div>mounted() { var myChart = echarts.init...

2020-03-21 11:40:42 360

原创 vue实现大文件切片上传

利用file里面的slice方法可以将文件切片,前端进行切片处理向http并发传递。等所有切片上传完成后再向服务器发送一个合并切片的请求。<input type="file" @change="onChange" ref="fileInput" />onChange() { let self = this; let file = this.$refs.fileInpu...

2020-03-15 12:34:09 4116 2

原创 nodejs与vue(elementui)实现图片上传

前端这里我们利用elementui实现文件上传,利用accept限制上传文件类型,同时通过js限制上传大小,借口返回后调用uploadSuccess得到url。<el-upload class="upload-demo" action="/api/album/upload" :on-success="uploadSuccess" :before-uploa...

2020-03-14 20:42:23 1464

原创 nodejs实现后台分类分页

获取前端传过来的数据写mongodb查询语句使用async实现异步操作控制代码先查询符合条件的总数再查询分页传给前端var express = require('express');var router = express.Router();var async = require('async');var MongoClient = require('mongodb').Mongo...

2020-02-05 20:38:19 1093

原创 js单线程(js在node和浏览器中运行的机制)

js 运行的顺序 同步→异步(微任务→宏任务)先执行全局的同步代码,在node中从微任务队列中依次取出所有的任务放入调用栈中执行,然后开始宏任务,宏任务队列中的所有任务都取出来执行(在浏览器中,浏览器只取一个,执行完一个宏任务后再执行下一个),每个宏任务阶段执行完毕后,开始执行微任务,再开始执行下一阶段宏任务,以此构成事件循环node中 同步→所有微任务→所有宏任务(同步→所有微任务→...

2019-08-10 12:43:24 235

原创 图片懒加载

代码思路页面滚动时加载图片判断页面窗口+页面滚动距离是否大于图片距顶部的距离,大于则加载。通过创建实例预加载图片,加载完成后赋到图片上。<div> <img src="images/loading.gif" data-src="images/1.jpg"></div><div> <img src="images/loadin...

2019-07-05 17:29:30 103

原创 express的基本使用

安装expressyarn add express创建一个server.js文件var express = require('express');var app = express();app.get('/', function(req, res){ res.send('this is the hello word');})app.listen(3000);console...

2019-06-03 19:32:28 133

原创 js伪数组

拥有length属性,但不具有索引和数组的方法,本质是一个对象。//一个简单的伪数组var arr = { length: 3, "0": "first", "1": "second", "2": "third"};将伪数组转化成数组<body> <ul id="ul"> <li id="li">&...

2019-05-08 11:00:18 135

原创 vue自定义指令

vue可以中通过Vue.directive注册一个全局的自定义指令// 注册一个全局自定义指令 `v-focus`Vue.directive('focus', { // 当被绑定的元素插入到 DOM 中时…… inserted: function (el) { // 聚焦元素 el.focus() }})实现一个拖拽的自定义指令import Vue ...

2019-05-06 23:20:00 135

原创 vue组件开发

局部组件import component1 from '../component/zl-header';export default { name: "twoWeekReport", components: { component1 },};全局组件import component1 from './component/zl-header.vue';Vue.com...

2019-04-24 12:57:22 149

原创 百度地图的使用

申请AK创建应用项目名称:xxx应用类型: 浏览器端白名单: *(测试环境)引入脚本<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script>创建实例及定位var map = new BMap.Map("allmap")...

2019-04-20 22:06:31 106

原创 js常用封装

时间处理function dateToString(date){ //2018年X月X日 00:00:00 星期X // y/m/d h:M:s var week = ["星期天","星期一","星期二","星期三","星期四","星期五","星期六"] var dateStr = ""; var y = date.getFullYear(); var m = date.getM...

2019-04-09 15:47:54 86

原创 js防抖和限流

防抖function debounce(callback,delay=300){ var t = null return function(){ clearTimeout(t) t = setTimeout(callback,delay) } } window.onscroll = debounce(function(){ cons...

2019-04-08 10:54:56 3316

原创 js操作audio和video

自定义样式audio和vedio是默认看不见元素的,可以使用设置controls样式使其可见(该样式由浏览器自己提供),在network中看到media看到相关的信息。这里我们取消controls自定义它的样式。 <div class="box"> <video id="myVideo"> <source src="http://www....

2019-04-06 17:13:12 384

原创 vuex

组件之间的通信props,this.$emit(事件,传值)vuex一个状态管理器,可以储存数据,实现组件之间的通信。state 存放数据getters 类似于计算属性Mutations 更改 Vuex store中的状态的唯一方法一个mutation = 一个事件类型 和 一个 回调函数Actions 类似于 mutation,不同在于:Actions 提交的...

2019-03-06 15:48:08 94

原创 vue-cli 2.x和3.0正向代理跨域

vue-cli3.0 需要自己去手动添加vue.config.js文件//vue-cli 3.0中 devServer: { port: 8080, // 端口号 host: 'localhost', https: false, // https:{type:Boolean} open: true, //配置自动启动浏览器 // proxy: 'ht...

2019-03-06 15:32:08 905

原创 vue-cli 3.0 项目创建

1. 安装nodehttp://nodejs.cn/download/2. yarn安装https://yarn.bootcss.com/docs/install/#windows-stable// 换源 国内npm比较慢yarn config set registry https://registry.npm.taobao.org3. webpack安装yarn global a...

2019-03-03 16:52:52 113

原创 css面试

自适应布局BFC的作用:消除Margin Collapse 容纳浮动元素 阻止文本换行双飞翼布局 .l{ background: #000; height: 300px; float: left; width: 200px; } .r{ background: pink; height...

2019-01-24 22:06:00 126

原创 jq实现轮播淡入淡出

&amp;lt;!DOCTYPE html&amp;gt;&amp;lt;html&amp;gt;&amp;lt;head&amp;gt; &amp;lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&amp;gt; &amp;lt;title&a

2018-11-15 17:41:15 459

原创 3D二级旋转导航栏

1 效果图 2 代码&amp;lt;!DOCTYPE html&amp;gt;&amp;lt;html lang=&quot;en&quot;&amp;gt;&amp;lt;head&amp;gt; &amp;lt;meta charset=&quot;UTF-8&quot;&amp;gt; &amp;lt;link rel=&quot;stylesheet&a

2018-09-14 20:08:10 352

空空如也

空空如也

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

TA关注的人

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