自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (1)
  • 收藏
  • 关注

原创 从源码的角度解析Vue Computed原理

前言对于computed属性,几乎每次面试的时候都要去问一遍,之前也就靠着自己的一点业务中使用的理解去说说,但这种还是太浅了,很多时候并不是面试官所需要的答案。所以想着干脆把computed源码阅读一遍,知道它的工作原理,这样才能做到真正的理解。先看一下初始化吧先跟着源代码了解Computed是在哪里进行初始化的function Vue(options) { ... this._init(options)}function initMixin(Vue) { Vue.p

2021-12-24 14:00:02 672

原创 深入理解Javascript闭包

关于作用域链的了解可以看这篇博客深入理解JavaScript作用域和作用域链什么是闭包闭包允许函数访问并操作函数外部的变量。只要变量或函数存在于声明函数时的作用域内,闭包即可使函数能够访问你这些变量和函数当函数可以记住并访问所在词法作用域,即使函数是在当前词法作用域之外执行,这时就产生了闭包闭包是基于词法作用域书写代码所产生的自然结果在日常开发中,闭包可以说是无处不在,可以说有JavaScript代码的地方就有闭包。只是我们并未意识到所书写的函数为闭包。一个最基础的闭包例子:<scr

2021-12-21 14:38:39 464

原创 深入理解Javascript作用域和作用域链

什么是作用域作用域是代码运行时某些特定的部分中变量、函数和对象的可访问性,换句话说,作用域决定了代码块中变量和其他资源的可见性作用域共有两种工作模型词法作用域(静态作用域)动态作用域词法作用域词法作用域也被称为静态作用域,就是定义在词法阶段的作用域。换句话说,词法作用域是由你在写代码时将变量和块作用域写在哪里决定的。JS作用域采用的就是词法作用域举个例子:var a = 2function foo() { var b = 2 console.log(a + b)

2021-12-17 14:45:43 889

原创 微信小程序自定义搜索导航栏

因为项目需要,要实现如京东类似的搜索 下图所示搜索框在导航栏中按照正常的导航栏拆解来计算自定义导航栏的高度从上图可以得到:自定义导航栏 = 菜单按钮高度 + 状态栏高度 + 边距 * 2然后翻看微信小程序API,找到相关的API- getMenuButtonBoundingClientRect从 getMenuButtonBoundingClientRect 中可以得到菜单按钮的...

2020-05-11 16:34:22 5989 5

原创 使用Vue实现Tabs组件(一)

前言组件毫无疑问在Vue中是无比重要的,一个页面就是由各个组件组成,可以说是面向组件开发了。博主使用Vue也有一段时间了,工作中也封装过一些简单组件,但从未有一篇详细的文章记录下整个思想过程。于是就想写下该文章记录一个Tabs组件的封装。准备工作封装Tabs组件我这里先从最底层做起,先用 Html + JQuery 实现了一遍,然后根据已经实现的去进行拆分。略过此步可以直接看使用Vue开发Tabs组件(二)基本的Html代码为:<div class="tab"> <di

2021-12-21 21:13:09 5801

原创 使用Vue开发Tabs组件(二)

一个 Tabs 的组成Tabs-Tab Header-Tab Panel一、TabPanel 组件开发 TabPanel 的 Template 基本结构<div :class="panelCls()"> <slot></slot></div>因为每个 Tab Header 的 label 和 name 需要在子组件上配置,故该子组件的 props 应该有以下俩值props: { label: { defau

2021-12-21 21:11:26 2026

原创 Typescript 装饰器和反射

装饰器装饰器(也叫注解)对一个类/方法/属性/参数的装饰。它是对这一系列代码的增强,并且通过自身描述了被装饰的代码可能存在行为改变。装饰器是一种特殊类型的声明,它能够被附加到类声明,方法, 访问符,属性或参数上。 装饰器使用 @expression这种形式,expression求值后必须为一个函数,它会在运行时被调用,被装饰的声明信息做为参数传入。装饰器分为:类装饰器、方法装饰器、属性装饰器、参数装饰器要使用装饰器需要在tsconfig.json中配置:{ "compilerOptio

2021-07-21 10:52:06 3018

原创 使用Scrapy爬取掘金热门文章的分析和实现

一、分析掘金网页1. 获取浏览器URL直接页面选择30内最热门的文章可得到URL地址为 https://juejin.im/timeline?sort=monthly_hottest 查看该网页Dom元素发现并没有文章的数据,可得知此为动态网页。2. 获得数据API由此得到获取文章的API为 https://web-api.juejin.im/query3. 分析请求参数在登录状态下...

2020-04-22 19:22:41 765 1

原创 关于JavaScript继承的几种方法

前言继承是JavaScript面向对象编程非常重要的一个特性,基本在日常使用以及面试过程中都会使用到。查阅一些资料后整理以下几种继承的方法记录在自己的博客中。如何实现继承原型链继承原型链继承是最简单的一种继承方式,只需要将子类的prototype值等于父类的实例即可 function Animal(){ this.superType = 'Animal' } A...

2020-04-02 13:43:22 141

原创 Next+React+Antd-mobile的简单搭建使用

前言最近公司需要使用 Next 结合 React 、 Antd-Mobile 开发服务端渲染的H5,于是就看了些文档搭建一个简单地环境记录下来。Next文档一、搭建基础环境1. 使用 yarn 或者 npm 初始化一个文件夹yarn initORnpm init2. 安装要使用的包package.json 整体配置{ "name": "next-react-demo"...

2020-04-02 13:14:59 1576 4

原创 极简的两种双向绑定的实现

两种方法Proxy + ReflectObject.defineProperty()两者差异Proxy + ReflectHTML代码<input type="text" id="input" /><span id="text"></span>Javascript代码const input = document.getElementById('in...

2019-06-11 11:06:45 481

转载 HashMap和Hashtable的区别

HashMap和Hashtable的比较是Java面试中的常见问题,用来考验程序员是否能够正确使用集合类以及是否可以随机应变使用多种思路解决问题。HashMap的工作原理、ArrayList与Vector的比较以及这个问题是有关Java 集合框架的最经典的问题。Hashtable是个过时的集合类,存在于Java API中很久了。在Java 4中被重写了,实现了Map接口,所以自此以后也成了Java...

2018-09-24 01:22:20 93

原创 Nginx+Ftp+Fileinput做图片上传显示服务器(三)

这是Nginx+Ftp+Fileinput做图片上传显示服务器的最后一篇,结合之前的SSM框架开始做上传显示。之前的SSM搭建的简易登录系统http://blog.csdn.net/a1369508468/article/details/63253599 之前忘了贴出数据库字段,就在这里一并贴出: 一、JSP页面编写fileinput上传组件下载:http://download.csdn.n

2017-03-23 23:47:33 723

原创 Spring+SpringMVC+Mybatis简单配置和使用

之前做的项目一直使用SSM框架开发,用了几个月的SSM,个人感觉搭建起来比较简单也非常好用,之前自己也搭过小型的ssm但没记录下来,正好写ftp+nginx+fileinput的时候需要用到,所以又整理了一次就记录了下来。SSM整合一、配置文件需要的JAR包创建编写jdbc配置文件jdbc.properties #JDBC Configure jdbc.driver=com.my

2017-03-18 14:08:31 563

原创 Nginx+Ftp+Fileinput做图片上传显示服务器(二)

nginx+ftp+fileinput做图片上传显示服务器之ftp安装配置1.安装vsftpd yum -y install vsftpd2. 配置vsftpd,vsftpd默认安装目录为/etc/vsftpdvi /etc/vsftpd/vsftpd.conf//允许匿名登录访问改为NOanonymous_enable=NO//不让登录用户跳出自家的目录chroot_local_u

2017-03-15 12:29:42 853

原创 Nginx+Ftp+Fileinput做图片上传显示服务器(一)

nginx+ftp+fileinput做图片上传显示服务器之nginx配置 之前做项目做到图片上传一直用的是单张上传,后来项目需要优化要使用多张一次上传就使用了fileinput插件,再后来又需要图片单用一个服务器,我就从百度搜了点资料使用ftp+fileinput做图片上传,nginx用来网站上的显示,因为项目上做完了就在本地搭了个环境测试。Nginx介绍Nginx ("engine x") 是一

2017-03-14 23:38:33 1517

原创 Hibernate的简单配置和使用

Hibernate需要的10个jar包(版本号不固定)slf4j-log4j12-1.5.8.jarlog4j-1.2.17.jarslf4j-api-1.5.8.jarcommons-collections-3.1.jarantlr-2.7.6.jarhibernate3.jardom4j-1.6.1.jarjavassist-3.9.0.GA.jarjta-1.1.jarmys

2017-03-11 14:45:41 357

原创 Centos7 下安装SVN

使用yum命令安装SVNyum -y install subversion查看svn版本号svn --version 建立版本库mkdir /usr/local/svndatasvnadmin create /usr/local/svndata配置conf文件cd /usr/local/svndata/confvim svnserve.conf改动里面的四个属性anon-access

2017-03-08 15:37:27 335

Hibernate需要的jar包

Hibernate需要的jar包

2017-03-11

空空如也

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

TA关注的人

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