自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue+element-ui实现侧边菜单栏与标签页联动

使用vue+element-ui实现侧边栏菜单el-menu与el-tabs标签页联动效果先看实现效果实现思路el-menu使用vue-router的模式,以index进行路由跳转,当前激活菜单:default-active="$route.path",这样就会默认以当前路由路径高亮菜单选项,解决刷新等情况的高亮问题,主要代码 <el-menu :default-active="$route.path" class="el-menu-vertical-demo" .

2020-07-31 18:01:56 13806 7

转载 JS中的类型转换

17道题让你彻底理解JS中的类型转换JS类型转换规则详解

2020-12-07 15:09:47 146

原创 javascript-puzzlers题目笔记

1.["1", "2", "3"].map(parseInt)parseInt(‘1’,0) = 1 radix为0时,返回第一个参数的值parseInt(‘2’,1) = NaN radix小于 2 或者大于 36,则 parseInt() 将返回 NaN。parseInt(‘3’,2) = NaN 除了“0、1”外,其它数字都不是有效二进制数字parseInt(s,radix)s : 要被解析的值。如果参数不是一个字符串,则将其转换为字符串(使用 ToString 抽象操作)。《

2020-12-04 14:39:48 332

原创 图片在线url转base64与file,可上传

基本思路先转base64- 将图片画到canvas(canvas.drawImage())- 通过canvas.toDataURL()生成base64再用base64转可以上传的blob或file upload3DNoticeImg(imgSrc) { // 返回一个Promise return new Promise((resolve, reject) => { let image = new Image(); image.src =

2020-12-02 11:35:05 1164

原创 css column列属性 布局不换列

今天在还原一个h5页面,用到了瀑布流,使用column列,在过程中遇到了一个问题,在这里记录一下实现代码<div class="card-list"> <div class="card-item"> <div class="cover-img"> <img src="https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK.

2020-11-27 11:24:30 508

原创 面试必备--手写Promise.all与.race

最近面试被问到了手写Promise .all 与 Promise.race,奈何没有自己实现过,只能阿巴阿巴面完之后,冷静下来思考了该如何实现,并把他写了下来(在实现过程中确实收获不少,让我对这两个方法有了更深的理解)这里用到了上次写得promiseAjax,用于测试function promiseAjax(url, type, data, timeout = 8000) { return new Promise((resolve, reject) => { type.

2020-09-20 22:41:55 649 1

原创 原生Js实现ajax,并返回Promise结果

原理:通过XMLHttpRequest对象向服务器发异步请求,将结果使用Promise返回function promiseAjax(url, type, data, timeout = 8000) { return new Promise((resolve, reject) => { // 请求方式小写转换 type = type.toLocaleLowerCase() // 新建一个XMLHttpRequest.

2020-09-20 00:31:19 634

原创 vue中scoped与/deep/深度选择器原理总结

最近在写一个vue+element-ui项目,使用element-ui某些组件修改样式时,老是需要加上/deep/深度选择器,以前只是知道这样用,但是还不清楚他的原理,这次就来好好的梳理一下1. 首先我们需要知道css中的属性选择器w3c解释:对带有指定属性的 HTML 元素设置样式。可以为拥有指定属性的 HTML 元素设置样式,而不仅限于 class 和 id 属性。注释:只有在规定了 !DOCTYPE 时,IE7 和 IE8 才支持属性选择器。在 IE6 及更低的版本中,不支持属性选择。.

2020-07-31 16:25:20 2318

原创 vue-cli创建的vue项目指定入口文件

主要使用process.env.NODE_ENV === ‘production’判断当前环境,再使用config.entry(‘app’).clear().add(’…’) 指定入口文件module.exports = { chainWebpack: (config) => { config.resolve.alias //set第一个参数:设置的别名,第二个参数:设置的路径 .set('@', resolve('./src')) config.w.

2020-07-31 14:09:55 1773

原创 shiro整合swagger2需要放行的资源

filterMap.put("/swagger-ui.html", "anon");filterMap.put("/swagger-resources/**", "anon");filterMap.put("/v2/**", "anon");filterMap.put("/webjars/**", "anon");filterMap.put("/","anon");filterMap.put("/csrf","anon");

2020-07-26 21:02:44 548

原创 shiro+jwt登录认证anon配置无效

shiro+jwt登录认证anon配置无效需求:使用shiro+jwt进行登录认证,希望可以自定义一些不需要认证的接口(登录接口等),其他统统交给jwtFilter进行token认证原来shiroFilterFactoryBean的配置@AutowiredJwtFilter jwtFilter;@Bean public ShiroFilterChainDefinition shiroFilterChainDefinition() { DefaultShiroFilterC

2020-07-26 20:27:57 1447 1

原创 手写实现节流防抖,就这?

防抖函数参考掘金文章作用:频繁触发,第一次与不触发的时候执行函数节流函数(throttle)作用:在某一个时间内函数只被执行已使用场景:当一个函数被频繁执行,而你希望它只是在某个时间段内只执行一次,这时候你就可以用节流函数了,如滚动监听,窗口resize,这些执行频繁的函数实现代码:function throttle(fn,delay){ let flag = true // 是否已有定时器 let timer = null return function(...args){

2020-07-23 15:16:56 451

原创 原来Vue注册全局组件这么简单

Vue注册全局组件最进在练手的项目上,需要一个加载动画组件,由于在多个地方需要引用,所以将其注册为全局组件导出对象import Skeleton from './Skeleton';export default { install: Vue => { Vue.component('skeleton', Skeleton) }}在main.js中注册import Skeleton from '@/components/skeleton/index';Vue.use

2020-07-19 15:31:21 451

原创 记一次Vue项目优化

主要思路是:使用CDN加载库,减小体积,开启Gzip压缩在vue.config.js中配置module.exports = { chainWebpack: (config) => { // 配置路径别名 config.resolve.alias //set第一个参数:设置的别名,第二个参数:设置的路径 .set('@', resolve('./src')); // 根据环境不同配置不同的项目入口 config.when(process.

2020-07-18 17:31:53 135

原创 终于理清offset、client、scroll

offset、client、scrolloffset偏移量属性只读定位父级 offsetParnet:与当前元素最近的经过定位的父级元素元素自身有fixed定位,offsetParent是nullbody元素的offsetParent是null元素自身无fixed定位,offsetParent是body元素自身无定位,父级元素存在定位,offsetParent...

2020-04-11 17:20:59 95

原创 vue从入门到面试题

VUE入门安装CDN引入<script src="https://cdn.jsdelivr.net/npm/vue"></script>下载和引入开发环境 https://vuejs.org/js/vue.js生产环境 https://vue.org/js/vue.min.jsnpm安装案例hellow,world<div i...

2020-04-06 21:46:16 112

原创 coding cloud studio 在线Linux学习环境搭建

使用coding cloud studio建立Linux学习环境正在学操作系统,需要linux环境,电脑安装Linux太繁琐,就使用coding云开发平台搭建学习环境,主要编译c++注册coding账号点击could studio选择环境参数打开终端,默认用户为root,安装g++apt-get update升级 apt-getapt-get install g++ 安装...

2020-04-02 15:17:56 500

转载 react入门学习笔记---b站千峰教程转载

React.js - 第1天1. React简介React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设 Instagram(照片交友) 的网站。做出来以后,发现这套东西很好用,就在2013年5月开源了。Angular1 2009 年 谷歌 MVC 不支持 组件化开发由于 React 的设...

2020-03-27 16:44:33 547

原创 typescript入门,了解一下

新增类型元祖类型(tuple)枚举类型(enum)任意类型(any)void类型nerver类型注意ts为了使编写的代码更规范,更有利于维护,增加类型校验写ts代码必须指定类型var flag:boolean = true;falg = 123;//报错定义数组的三种方式 let arr = ['1','2']; let arr:number[] = [12,12,2...

2020-03-27 16:38:01 67

原创 nodejs了解一下

nodechrome V8 运行环境事件驱动非阻塞i/o服务器基本语法能操作数据库能操作本地文件nvmnode版本管理工具npm可以使用npm config set registry http://registry.npm.taobap.org来更改为国内镜像源,使下载速度更快模块化内置模块(node中提供的可以直接调用)文件操作第三方模块自定义...

2020-03-27 16:30:53 159

原创 JavaScript高级总结,看这篇准没错

Javascript高级笔记1. new创建对象的本质 function Person(name,age){ this.name = name; this.age = age; this.sayHi = function(){ return "Hello,I'm" + this.name; } } let John = new Person...

2020-03-27 15:49:04 177

空空如也

空空如也

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

TA关注的人

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