自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (2)
  • 收藏
  • 关注

原创 前端js操作截取/裁剪图片

前端js操作截取图片主要使用用canvas相关api来实现图片裁剪在vue中使用<template> <div> <img :src="imgSrc"/> <div> <h2>裁剪后的图片</h2> <img :src="handleSrc" height="100"> </div> </div></template>&

2021-04-06 15:26:03 7874 3

原创 JavaScript设计模式:观察者模式和订阅/发布模式

observer和subscribe/publishobserver(观察者模式)概念一个或多个观察者对目标的状态敢兴趣,他们通过将自己依附在目标对象上以便注册所感兴趣的内容。目标状态发生改变并且观察者可能对这些改变感兴趣,就会发送一个通知消息,调用每个观察的更新方法,当观察者不在对目标状态感兴趣是,他们可以简单地将自己从中分离——引用自《javascript设计模式》引用《设计模式:可复用面向对象软件的基础》《JavaScript设计模式》一书中给出了观察者模式的实现方法,使用了四个组件(书

2021-03-13 22:50:22 431

原创 防抖和节流

防抖和节流使用场景防抖:比如echarts图表需要根据窗口的大小进行resize操作,但是浏览器的resize事件触发太频繁了,特别是在拖拉浏览器窗口的时候,就会导致echarts实例经常去调resize方法,但是实际上只需要在停止变化浏览器窗口大小之后再去执行resize方法就好了,那么这个时候就需要用到防抖的技术了。防抖函数有另一个需要注意的地方,就是停止多久之后再执行的问题。但是很少有人思考为什么叫防抖,防抖是什么意思,防止抖动?这么理解完全没有问题,并且还十分形象。举个生活中的例子,假设现

2021-01-30 16:00:14 399 2

原创 vue自定义指令——v-eharts自定义指令实现实践

vue自定义指令官方文档作用自定义指令为什么存在?官方文档给出的原因如下…在 Vue2.0 中,代码复用和抽象的主要形式是组件。然而,有的情况下,你仍然需要对普通 DOM 元素进行底层操作,这时候就会用到自定义指令。…对普通dom元素进行底层操作!有点振聋发聩的意思,我们所熟知的vue指令包含了v-if,v-show,v-for,v-model,v-bind,v-on等等,如果再往下想一层,这些指令无一不是在帮我们操作底层的dom。v-if,删除/新增dom节点v-show,给do

2021-01-30 15:37:12 591

原创 post请求下载文件(兼容IE)

post请求下载文件(兼容IE)有时候由于下载文件的url携带的参数过多,导致整个url长度超过get请求的上限,这个时候需要更换为post请求,具体实现如下function downLoadFile (url, params, fileName) { const xhr = new XMLHttpRequest() xhr.open('post', url) xhr.setRequestHeader('Content-Type', 'application/json') xhr.res

2020-10-29 22:58:31 1766

原创 【js】this作用域全解析

this作用域问题一般来说,谁调指谁是一个基本原则,但是这并不是一个非常好的面试回答,虽然从某种程度上,这有助于帮我们判断this指向问题,但是不能涵盖所有的情况,建议从函数调用的4种方式展开函数式调用方法调用模式构造函数调用模式(this指向实例)call、apply、bind函数式调用var age = 10var person = { age:12, say(){...

2020-04-09 13:31:49 1299

原创 【前端:Ts+React+Redux+React-Router+ant-design;服务端:Node+Koa2+MongoDB】从TodoList入门React全家桶采坑合集

文章目录前言采坑合集没有全家桶脚手架搭建typescript环境在官方全家桶中使用typescript配置tslint样式表的使用配置其他类型的css处理文件行内样式的使用样式没有模块作用域配置react-router没有双绑绑定事件事件参数问题使用ant-designreduxredux谷歌开发者工具combineReducersredux中间件redux-thunk概念使用redux中间件re...

2019-09-02 21:17:36 1005

原创 字节跳动2020届秋招提前批前端面经

字节跳动面经一面自我介绍完,面试官问了为什么项目中选择vue1、上来聊如何理解mvvm、vue组件通信、vex、路由实现2、写一个组件实现一个user banner组件,根据用是否登录、注册显示不同的信息;name、id、icon我的实现<template><div> <div v-if:'isLogin'> <div&...

2019-07-18 21:48:00 2110 1

原创 【web】仿微博浏览量自增(判断元素是否在可视区+停留2s事件响应)

浏览量自增需求分析微博、空间动态中经常能看到浏览量统计,不同于博客,点击之后浏览量自动加1,这种碎片化的推送信息,浏览次数不能以常规的点击方式来统计,用户可能甚至根本不会点击内容,匆匆一瞥就把滚动条往下滑动了,所以如何设计一个自动统计用户浏览这些零散信息的浏览量,是大有操作空间的。首先规定用户的什么行为作为一次浏览,考虑用户在每个信息前停留的时间,以及浏览页面的习惯,做出如下规定如果一条微...

2019-07-11 20:14:41 454

原创 【Rxjs】初步感知-不算入门的入门

文章目录Rxjs异步数据流编程各异步编程语法比较相比Promise的优势Rxjs unsubscribe 取消订阅Rxjs 订阅后多次执行Rxjs 工具函数rxjs教程指路中文手册Rxjs异步数据流编程个人理解:异步编程,类Promise,功能比Promise更强大各异步编程语法比较回调函数function getcallbackData(callback) { setTime...

2019-05-23 23:49:26 220

原创 【js】require和import的区别

文章目录`require`和`import`的区别起源导出命令/引入命令CommonJSes6静态优化require和import的区别起源es6诞生之前,js一直没有模块系统,就连css都有@import,对现在复杂的大型项目开发无疑是一种阻碍。es6在2015年6月正式发布,所以es6也有一个别称es2015。官方没有提出es6之前,社区给出了解决模块问题的方案,那就是node.js。介...

2019-05-21 20:27:11 4047

原创 【最全】原生JS创建对象与继承的所有方法

文章目录1. JS创建对象(实例)的方法1.1 工厂模式1.2 构造函数模式1.3 原型模式1.4 组合使用构造函数模式和原型模式1.5 动态原型模式1.6 寄生构造函数模式1.7 稳妥构造函数模式2. JS实现继承的方法2.1 原型链继承2.2 借用构造函数2.3 组合继承2.4 原型式继承2.5 寄生式继承2.6 寄生组合式继承1. JS创建对象(实例)的方法1.1 工厂模式functi...

2019-04-29 16:23:06 395

原创 【SpringMVC】仿空间说说照片上传

先看看实现效果,如果不是您需要的效果就不浪费您宝贵的时间了。代码地址此需求适用于用户在提交包含多张图像信息的相关记录时, 前端页面中图像排版的一个相关显示。一、实现思路 如果只是上传单张图像,那么常规的上传流程应该是1:用户(前端)选择需要上传的图像2:后台(服务器端)接收前端发送的表单数据,将照片存入指定位置,再连同文本信息一起保存进数据库,上传文件的方式使用Apache 的...

2019-02-17 18:47:45 397

原创 【Bootstrap】modal模态框动态修改标题或其他内容

       最近用bootstrap的模态框做一个表记录的修改和新增,考虑代码的复用性这两个功能肯定是使用一个模态框,但是标题肯定需要修改成“新增xxx”和“修改xxx”,最开始的思路是在点击事件中通过id获取标题所在的标签,然后修改标签里的内容,结果当然是行不通,F12也看不出什么问题,直觉告诉我在模态框初始化的时候一定发生了什么事情,于是去bootstap的官网查开发文档,然后发现了一个很有...

2018-08-06 21:02:02 14042 2

原创 【C#】winform软件UI设计模板

最近一直在改软件UI,源码,欢迎讨论一、简介        之前用的一个模板用的是office风格的,但是奈何最近做的系统功能并不是很多,菜单栏显得很空洞,BOSS严令整改。遂改变思路想做一个类似360的UI,但是BOSS还是不满意,于是改来改去改成了现在这个样子,除了使用winform的原生控件,还使用了DevExpress插件。二、构成        主要分为三个部分,

2017-10-01 17:25:20 18088 4

原创 【C#】byte[]数组中有值大于127时与string之间的相互转化

接触到byte[]数组是在做对象序列化的时候,在将byte[]数组转化到string时,尝试过多种方法,比较靠谱的是这两种string s1 = System.Text.Encoding.ASCII.GetString(b);string s2 = System.Text.Encoding.Default.GetString(b);byte[] b1 = System.Text.E

2017-08-03 09:23:17 3188 1

原创 C#设置DataGridView某一具体单元格的内容居中显示

找了很多方法,要么是设置整个DataGridView的内容居中显示要么是整列内容居中显示,于是去https://msdn.microsoft.com/zh-cn/library/1yef90x0(v=vs.110).aspx查

2017-07-19 17:00:29 10980 3

【SPringMVC】前端仿空间说说照片上传

IDE:eclipse,服务器:Tomcat,仿照空间说说照片发布的方式,以九宫格的形式上传照片并显示

2019-02-17

C#winForm软件UI设计模板

c#winForm软件UI设计,使用传统的winform控件加上DevExpress控件。

2017-10-01

空空如也

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

TA关注的人

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