自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 【JavaScript】深入理解call,以及与apply、bind的区别

一、callcall有两个妙用 1、继承(我前面的文章有提到用call实现call继承,有兴趣可以看下。https://www.cnblogs.com/pengshengguang/p/10547624.html) 2、修改函数运行时this的指向(今天要说的)// 代码段一var obj = {name: 'psg'};function fn...

2019-07-14 15:29:00 180

转载 【JavaScript】彻底明白this在函数中的指向

一、this,其实可以类比成人  说到this的话,我们在js中主要研究的都是函数中的this,在javascript中,this代表当前行为的执行主体,而context代表的是当前行为执行的的环境(区域)。  例如男神在北理珠吃饭,这句话分别代表的含义如下  男神 -->> 主体(this)  吃饭 -->> 函数(function)...

2019-06-28 23:48:00 206

转载 【设计模式+原型理解】第四章:函数的三种角色+原型链终结版

一、函数的三种角色  1)作为普通函数  2)作为对象  3)作为类ps:可以同时存在,之间没有任何冲突二、怎么理解函数的三种角色  这三种角色可以同时存在,没有任何冲突,举个例子// 这三种角色是没有冲突的,看下面的例子function Fn1() { // 这时候,Fn就是一个普通函数,形参赋值,预解释,代码执行 var num =...

2019-05-06 23:11:00 207

转载 【设计模式+原型理解】第三章:javascript五种继承父类方式

【前言】  我们都知道,面向对象(类)的三大特征:封装、继承、多态  继承:子类继承父类的私有属性和公有方法  封装:把相同的代码写在一个函数中  多态:    ->重载:JS严格意义上是没有重载,但可以通过传递不同参数实现不同功能    ->重写:子类重写父类的方法(这里只要把父类的原型一改,父类的其他实例会受到影响,又因为子类的原型链继承父类的实例...

2019-03-17 16:45:00 240

转载 【设计模式+原型理解】第二章:基于构造函数扩展出来的原型模式

在第一章的时候,说过了单例模式、工厂模式、构造函数模式,你还记得构造模式是怎么样的吗?function CreateJsPerson(name, age) { this.name = name; this.age = age; this.writeJs = function() { console.log("my name is " + this....

2019-02-22 00:02:00 112

转载 【设计模式+原型理解】第一章:使用Javascript来巧妙实现经典的设计模式

刚开始学习设计模式之前,我是没想说要学习设计模式的,我只是因为想学习JS中的原型prototype知识,一开始我想JS中为什么要存在原型这个东西?于是慢慢通过原型而接触到设计模式,后来发现我这个过程是非常正确的,即先学习设计模式,然后在剖析原型及其原理。 我一开始,都是通过针对原型的知识点去看去学,发现还是理解不了,就算理解了原型,可以说只是停留在表面的...

2019-02-19 23:45:00 450

转载 【Javascript】JS遍历数组的三种方法:map、forEach、filter

前言  近一段时间,因为项目原因,会经常在前端对数组进行遍历、处理,JS自带的遍历方法有很多种,往往不加留意,就可能导致知识混乱的现象,并且其中还存在一些坑。前端时间在ediary中总结了js原生自带的常用的对数组遍历处理的方法,分别为:map、forEach、filter,在讲解知识点的同时,会类比相识的函数进行对比,这样会有助于思考方法的利与弊。************...

2018-10-17 23:18:00 633

转载 mysql_8.0.12环境配置

1.官网下载mysql_8.0.12免安装包,解压到你存放的地方;2.配置环境变量(把bin的文件夹弄进系统path里面);3.在解压的根路径中,查看是否含有my.ini文件,没有就新建一个,内容如下:[mysqld]# 设置3306端口port=3306# 设置mysql的安装目录basedir=E:\Software\large\mysql\my...

2018-08-19 13:06:00 145

转载 【递归】树形断层判断算法

场景 最近在接了个需求,其中有个树形结构的勾选方式逻辑判断比较复杂,断层选择需要进行逻辑判断,什么是断层?看下图给你解释: 黑色代表当前结点被勾选上,白色代表未勾选,上图描述了断层的逻辑,意思就是,有关联的一条线上的节点,假如中间一个节点没有勾选上,证明这就是断层。分析 注意,每一个节点就是一个对象,对象里面有属性...

2018-08-02 22:48:00 310

转载 Spring基础学习,附例子代码讲解

什么是Spring、IOC、AOP、DI? Spring是一个基于IOC和AOP的结构J2EE系统的框架。 IOC(Inversion Of Control)控制反转(Spring的基础,创造对象由以前的程序员new构造方法来调用,变成交由Spring创建对象) AOP(Aspect Oriented Programming)面向切面编程 (在面向切面编程中...

2018-07-22 22:54:00 148

转载 【Javascript】JS的异步操作,浏览器的多线程间的协作

遇到的问题,引发了思考 今天看了一个例子,强烈引发了我对于浏览器多线程之间的操作机制、同步与异步、回调函数的兴致,代码如下:<html><head><title>title</title></head><body> <input type="text" val...

2018-04-07 20:53:00 184

转载 【Vuex】vuex基本介绍与使用

Vuex是什么?官方解释:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue 的官方调试工具devtools extension,提供了诸如零配置的 time-travel 调试、状态快照导入导出等高级调试功能。简单来说,当Vue应用程序比较庞...

2018-03-12 23:06:00 115

转载 【Vue.js】代码优化:在dom中加一行v-if就可少写一个循环类方法

【问题描述】  把当前用户的购物车中(cartList),商品(good)选中字段checked = true的商品在订单页面中进行展示出来。【一般做法】(两次循环)  首先取出当前用户的购物车列表,循环里面的item,如果item=true,就把当前的商品加到orderList数组中,然后通过展示订单列表的DOM,通过v-if来对orderList数组进行展示出...

2018-03-02 10:47:00 191

转载 【CSS】按钮的禁用与可用 CSS Cursor 属性

禁用时的样式可用时的样式样式很简单,禁用就设置为灰色,可用就设置为红色,今天这个不是重点,重点的是,光标的样子一般,禁用时候,光标移动到按钮的上方,光标如下而在启用按钮的时候,光标移动到按钮上方,光标为金手指如何控制他们光标的样式,这里,CSS提供了一个控制属性样式cursor正常选泽: cursor:default金手指:...

2018-03-01 14:59:00 1059

转载 【Node.js】通过mongoose得到模型,不能新添字段的问题

问题描述  通过node.js为查询到的json对象添加新的字段,对象成功保存到数据库中,但新增字段却没保存。  前几天用vue+node.js+mongodb技术做一个购物车功能的网页,发现node.js通过mongoose来创建创建数据库表模型(用户模型),通过模型来操作mongoose的保存API来更新数据库。(就是点击商品加入购物车按钮,然后该商品的信息就会添加到u...

2018-02-03 16:11:00 442

转载 【Vue.js】加载更多—vue-infinite-scroll

引言今天用到了一个加载更多的插件,用起来很方便,插件的名字叫做vue-infinite-scroll我们可以去npmjs.com官网看一下这个vue-infinite-scroll的用法,官网上面写的已经很简单易懂的了。安装npm install vue-infinite-scroll --save引入官网介绍了三种引入该插件的方式,...

2018-01-26 21:20:00 203

转载 【Axios】前端页面使用axios调用后台接口

项目基本情况前端项目是用vue.js做的,前端起的服务URL:http://localhost:8080/后端项目是用Node.js做的,后端起的服务URL:http://localhost:3000/现在前端要调用后端服务其中一个接口,URL:http://localhost:3000/goods,这个接口需要3个参数(page,pageSize,sort)...

2018-01-25 11:46:00 2951

转载 【Node.js】二、基于Express框架 + 连接MongoDB + 写后端接口

在上节,我们讲了如何搭建express环境,现在我们说说如何通过node.js写服务接口给前端调用1. 首先通过MongoDB建好数据库与表格例如,我的数据库名字为db_demo,数据库表格为goods表goods中的数据结构如下:'productId': {type: String}, // 商品id'productName': String,...

2018-01-24 19:41:00 181

转载 【Node.js】一、搭建基于Express框架运行环境+更换HTML视图引擎

1)安装express generator生成器 这个express generator生成器类似于vue-cli脚手架工具,用来创建一个后端项目,首先我们要对生成器进行全局安装,在cmd中输入下面命令:npm install -g express-generator 是否安装express generator生成器成功?在命令行工具直...

2018-01-24 19:31:00 138

转载 【MongoDB】使用MongoVUE看不到插入的数据

问题描述 明明在命令行中,输入mongodb的插入数据的命令,并且插入数据显示成功,却在MongoVUE可视化工具中,看不到插入的数据?mongodb使用版本为(3.4.6)mongoVUE使用版本为(1.6.9)问题原因 经过查阅资料,发现是引擎的问题,mongoDB3.2版本之后默认开启的存储引擎是wiredRiger,但是...

2018-01-23 10:35:00 391

转载 【MongoDB】MongoDB环境配置

软件下载与安装1.mongDB下载,可到官网下载,我用的是3.4.6版本。可以放到任意目录下,我的MongDB安装目录为D:\software\small_softeware\MongoDB2.mongdbVUE,版本为1.6.9,是一个mongDB可视化工具,安装的目录为:D:\software\small_softeware\MongoVUE_1...

2018-01-23 10:00:00 84

转载 【Node.js】利用node.js搭建服务器并访问静态网页

node.js是一门服务端的语言,下面讲讲如何利用node.js提供给我们的api来搭建服务器,并且访问静态网页项目结构如下----------------------------------------------------------------第一步首先你得安装node环境第二步利用node.js提供的api来建一个自己的服务器...

2018-01-19 19:40:00 665

转载 【Vue.js】vue基础: 3种Class和Style绑定语法

凡是用到了v-bind,那就一定有变量的存在,下面是三种语法的展示:1. 对象语法:v-bind:class="{active: isActive, 'text-danger': hasError}"// 这里的active是在class的名称,isActive是变量2. 数组语法<div v-bind:class="[activeClassA, ...

2018-01-06 16:25:00 205

转载 【Vue.js】vue项目目录作用

1. build文件夹:打包配置的文件夹  1.1 webpack.base.conf.js :打包的核心配置  1.2 build.js:构建生产版本,项目开发完成之后,通过build.js打包(加载base与prod,读取完之后通过webjpack命令对项目进行打包)  1.3 webpack.prod.conf.js:被build.js调用,webpack生产包的...

2018-01-06 16:13:00 144

转载 【Git】时光机命令—Git命令

cd c:         进入C盘mkdir learngit 创建名为learngit的文件夹cd learngit      进入learngit文件夹pwd          显示当前目录路径git init         把当前目录编程Git创库ls -ah         查看当前目录下的所有文件(包括隐藏的)...

2018-01-05 14:40:00 151

转载 【Vue.js】vue引入组件报错:该组件未注册?

[Vue warn]: Unknown custom element: <QuestionnaireOption> - did you register the component correctly? For recursive components, make sure to provide the "name" option上图的报错提示,...

2017-12-27 16:02:00 1448

转载 【CSS】flex布局初认识

1.父容器为Flex容器,它有以下六个属性:1)flex-direction: 作用:决定主轴的方向(如果为row,那么x方向为主轴;如果为column,那么y方向为主轴)属性:row | row-reverse | column | column-reverse;2)flex-wrap: 作用:换行,如果项目在一个主轴上排不下,如何换行属性...

2017-12-19 18:56:00 101

转载 【Vue.js】基于vue的实时搜索,在结果中高亮显示关键词

一、搜素效果如下:二、核心  1)利用oninput属性来触发搜素功能  2)利用RegExp来对字符串来全局匹配关键字,利用replace方法来对匹配的关键字进行嵌入高亮的<span class="gaoliang">标签,最后利用v-html来嵌入html标签来达到关键字高亮显示  3)利用axios.CancelToken来终止上一次的异步请求...

2017-12-18 19:22:00 991

转载 使用vue之directive设计列表加载更多

背景  之前写过一篇《纯JS实现加载更多(VUE框架)》,它的逻辑思路比较清晰易懂,而今天看了一天公司项目的部分功能代码,发现同事们写的加载更多的功能更加的有趣,而且易于封装到一个组件当中,便于日后的重用。思路  同样是检测滚动,然后计算可滑动高度、滑动高度、屏幕高度然后计算什么时候可以向后台请求数据,加载数据。而不同的是这次结合了vue.js中的全局API...

2017-12-14 17:15:00 152

转载 input的三个属性autocomplete、autocapitalize和autocorrect

下面的input的三个属性是H5新增的属性<input type="text" class="input-search" placeholder="请输入搜索内容" v-model.trim="searchKey" @input="searchEvent"ref="searchInput" autocomplete="off" autocapitalize="off"...

2017-12-14 13:59:00 1705

转载 基于vue与vux做的可滑动tab组件(附源码)

背景  前不久,刚完成了一个商品列表+购物车功能的页面,因为一级商品分类在顶部tab中显示,可滑动,间距可定制,如下图所示:定制的tab需求如下:  1. 每个tab-item的间距是相同的,可定制  2. 每一个tab-item的宽度是随着文字的增多而宽度增大  3. 当tab-item小于等于4个时,tab-item填满当前屏幕,平分剩余空间;当t...

2017-12-13 18:03:00 673

转载 webstorm常用快捷键

只写日常使用的快捷,会持续更新shift + ctrl + r :全局搜索,批量替换Ctrl+Alt+l :格式化代码的快键键转载于:https://www.cnblogs.com/pengshengguang/p/8026381.html...

2017-12-12 09:48:00 48

转载 常用的正则表达式的小知识

1) * 在不同的地方有不同的用处2) 正则表达式“^ + $”等符号意义转载于:https://www.cnblogs.com/pengshengguang/p/8022062.html

2017-12-11 11:05:00 66

转载 scrollWidth, clientWidth, offsetWidth的区别

转自他的博客:https://www.cnblogs.com/kongxianghai/p/4192032.html通过一个demo测试这三个属性的差别。说明:scrollWidth:对象的实际内容的宽度,不包边线宽度,会随对象中内容超过可视区后而变大。clientWidth:对象内容的可视区的宽度,不包滚动条等边线,会随对象显示大小的变化而改变。offsetWidth:...

2017-12-11 10:06:00 69

转载 Ajax的初步认识

1.背景  2005年,JJG发表了一篇在线文章,介绍了AJAX(Asynchronous Javascript + XML),这项技术能够向服务器请求额外数据而无须卸载页面,说是改变了以前的“单击”,“等待”的交互模式。事实上,在JJG提出的这项技术,已经存在了很长一段时间,AJAX以前就叫远程脚本,功能也是能实现浏览器与服务器之间的远程通信,重命名为AJAX,在2005年底开始红...

2017-12-07 11:01:00 83

转载 JSON初步认识

一、背景  曾经有一段时间,XML是互联网传输结构化数据的标准。但是XML过于繁琐、冗长。JSON2001年就开始应用了,2006年,DC才把Json提交给IETF.  与XML相比,Json是在JavaScript中读写结构化数据的更好的方式。  Json是一种数据格式,不是编程语言,不局限与JavaScript,很多语言都有针对Json的解析器和序列器。  Js...

2017-12-06 16:24:00 102

转载 基于vue技术的企业移动办公系统的设计与实现

如何打包:http://www.cnblogs.com/smilehuanxiao/p/7693858.htmlhttp://www.cnblogs.com/1314y/p/6207153.htmlhttp://www.cnblogs.com/yinghuochongfighter/p/6797365.html转载于:https://www.cnblogs.com/pen...

2017-12-05 15:05:00 345

转载 vue中使用refs定位dom出现undefined?

  之前在公司做项目,一直感觉用ref来定位dom节点挺方便的。但是期间遇到了一个问题,就是在mounted(){}钩子里面使用this.$refs.xxx,打印出来的却是undefined?  于是我就对比了一下之前使用ref定位的.vue文件,发现了他们之间的区别。  我们要想知道为什么会定位不到某个DOM节点,我们首先要理解mounted(){}这个钩子函数是用来做什么的。...

2017-11-30 15:46:00 1977

转载 CSS自定义三角形

https://segmentfault.com/a/1190000002783179转载于:https://www.cnblogs.com/pengshengguang/p/7902953.html

2017-11-27 10:27:00 90

转载 完整例子-正则控制input的输入

转 :https://www.cnblogs.com/ckf1988/p/5619337.html转载于:https://www.cnblogs.com/pengshengguang/p/7875679.html

2017-11-21 22:23:00 93

空空如也

空空如也

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

TA关注的人

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