<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[pro_monkeyking的博客]]></title><description><![CDATA[追求事物的本质]]></description><link>https://blog.youkuaiyun.com/pro_monkeyking</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; pro_monkeyking]]></copyright><item><title><![CDATA[带着疑问来理解JavaScript闭包是如此简单]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/95211241</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/95211241</guid><author>pro_monkeyking</author><pubDate>Tue, 09 Jul 2019 17:04:11 +0800</pubDate><description><![CDATA[前言
在JavaScript中，闭包对于JavaScript的意义无异于指针在c++中的意义。理解闭包是我们掌握JavaScript这门语言的基础能力，而对闭包的掌握程度就可以看出来你对JavaScript这门语言的深入程度，网上关于闭包的文章也不少但多数让人看过之后一头雾水，也许是自己理解能力较差。所以我还下定决心以提问的方式来理解何谓闭包，希望能给与我有相同境遇的博友一点帮助。
闭包是什么

...]]></description><category></category></item><item><title><![CDATA[深入理解flex布局]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/91377971</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/91377971</guid><author>pro_monkeyking</author><pubDate>Mon, 10 Jun 2019 15:07:23 +0800</pubDate><description><![CDATA[前言
随着电子产品的快速迭代，传统的前端布局越来越难以是配多端的屏幕显示，无论是table布局还是float布局在移动端适配上都有着很大的局限性。09年，W3C提出了一种新的方案—-Flex布局，可以简便、完整、响应式地实现各种页面布局，flex的应用可以极大程度上补充传统布局的不足之处。
flex布局是什么
Flex是flex box的缩写意为弹性布局，用来为盒状模型提供最大的灵活性。
特点：采...]]></description><category></category></item><item><title><![CDATA[纯前端实现腾讯cos文件上传功能]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/90683947</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/90683947</guid><author>pro_monkeyking</author><pubDate>Thu, 30 May 2019 01:26:07 +0800</pubDate><description><![CDATA[前言
在前端开发中文件上传是经常会遇到的，并且多数情况会使用第三方平台来存储文件，腾讯云cos是我们常用的。本篇文章就是带我从前端的角度实现腾讯云COS存储。本文参考了腾讯云COS开发文档 JavaScript SDK 
步骤

安装腾讯云COS上传所需的sdk

下载cos-js-sdk-v5.min.js并引入index.html

监听文件上传组件

//监听文件变化
document.ge...]]></description><category></category></item><item><title><![CDATA[纯web端实现二维码识别]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/90683805</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/90683805</guid><author>pro_monkeyking</author><pubDate>Thu, 30 May 2019 01:22:06 +0800</pubDate><description><![CDATA[前言
最近公司的业务场景中有个生成二维码和识别二维码的需求。生成二维码之前有做过，选用的 qrcode.js这个前端库,操作比较简单。这里不再赘述。
刚开始看到二维识别这个需求觉得很简单，以为有相应的前端库直接用就行了。但当真正开始写功能时，发现二维识别会涉及到很多其他的功能。废话不再多说，还是来看看如何实现的吧。
实现流程



调用摄像头
通过浏览器调用摄像头在h5中已经有个属性可以兼容大部分...]]></description><category></category></item><item><title><![CDATA[VUE全家桶之vuex核心原理解析]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/88851848</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/88851848</guid><author>pro_monkeyking</author><pubDate>Wed, 27 Mar 2019 18:13:04 +0800</pubDate><description><![CDATA[前言
现在前端开发中vuejs是大部分前端工程师的首选，只要不是很小的项目都会引用vuex来进行状态管理。最近新开展的项目比较复杂，使用vuex的地方也比较多。在此过程中也遇到了不少问题。如今有时间正好研究下vuex框架源码，深入了解下他的底层实现。
为什么要使用vuex
在当前前端的spa模块化项目中不可避免的是某些变量需要在全局范围内引用，此时父子组件的传值，子父组件间的传值，兄弟组件间的传值...]]></description><category></category></item><item><title><![CDATA[VUE全家桶之vuex的使用]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/88851839</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/88851839</guid><author>pro_monkeyking</author><pubDate>Wed, 27 Mar 2019 18:12:28 +0800</pubDate><description><![CDATA[前言
在vue项目中，如果我们涉及到兄弟组件间的传值（及多个组件共享一个状态）。遇到这种情况使用vuex来解决是目前比较流行的解决方案。虽然在vuex官方文档中详细介绍了vuex的使用方法，但是文档中的内容太过细节，初次阅读不易抓住重点。本篇文章根据自身使用vuex的经验来精简的说明下vuex的使用，希望内能够给初次使用vuex的小伙伴提供些帮助，也希望熟悉这块的道友如发现文章不到之处给出指正。
...]]></description><category></category></item><item><title><![CDATA[vue使用总结（3）生命周期篇]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/82733757</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/82733757</guid><author>pro_monkeyking</author><pubDate>Mon, 17 Sep 2018 10:45:01 +0800</pubDate><description><![CDATA[工作之初使用的angularjs框架，从那时开始数据双向绑定的思想就深深的吸引了我。那是刚入门并没有深究angularjs实现双向绑定的原理。所以至今对angularjs也是一知半解。在工作半年左右接触了vue，开始使用它作为主要的开发框架。使用至今已有两年多了，期间也对其源码进行过研究。vue的各种理念也都比较了解。最近有空总结下自己对vue各个知识点的理解。 
vue生命周期示例图 
 
上图...]]></description><category></category></item><item><title><![CDATA[解决iview中表格导出Excel时单元格内不换行的问题]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/80474627</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/80474627</guid><author>pro_monkeyking</author><pubDate>Wed, 30 May 2018 11:22:38 +0800</pubDate><description><![CDATA[分享一篇解决iview中表格导出Excel时单元格自动换行问题的文章



1.遇到问题的过程

最近的项目中有将表格内容导出到Excel表格的需求，正好我们使用的是iview框架。在iview中的table组件自带表格导出到Excel功能，于是开心的直接使用：

html:
&amp;amp;lt;Table :columns=&amp;quot;columns&amp;quot; :data=&amp;quot;data&amp;quot; size=&amp;quot;small&amp;quot; ]]></description><category></category></item><item><title><![CDATA[vue 项目中ivew按需引入]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/80249092</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/80249092</guid><author>pro_monkeyking</author><pubDate>Wed, 09 May 2018 09:38:17 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[vue.js的使用总结（2）原理篇]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/79669850</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/79669850</guid><author>pro_monkeyking</author><pubDate>Sat, 05 May 2018 09:57:55 +0800</pubDate><description><![CDATA[原理篇 
本章是以上一章为基础上来深入理解vuejs的设计思想， 
vue中比较出彩的是虚拟DOM，响应式数据数据操作（数据双向绑定）以及丰富的生态库（vue-router vuex iview….）。 
1.vue中的响应式数据 
在数据双向绑定这个理念出来之前，前端中都是使用jQuery或原生js操作DOM来实现数据变化。这不仅实现过程麻烦，也对页面的性能有很大的影响。vue框架中的核心理念就...]]></description><category></category></item><item><title><![CDATA[Vue项目中路由动态传参功能相关实现]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/79953755</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/79953755</guid><author>pro_monkeyking</author><pubDate>Sun, 15 Apr 2018 21:43:59 +0800</pubDate><description><![CDATA[这两天在项目中有个新需求：在当前页面中的有很多数据，过滤数据的条件有时间，页码，类型，id搜索….，假设我在页面中选择的某段时间，某个类型，现在我需要把握当前看到的信息完全展现给另一朋友。 
server端环境：时间和页码可以动态的传递到后端



一. 初步解决方案

刚看此需求首先想到的是vue—router的动态传参，于是就开始码代码。将过滤条件相关的变量动态的传说路由中




  thi...]]></description><category></category></item><item><title><![CDATA[chrome devtools 常用功能总结]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/78907872</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/78907872</guid><author>pro_monkeyking</author><pubDate>Wed, 27 Dec 2017 00:15:16 +0800</pubDate><description><![CDATA[一 Console基本功能 
1.Console可以作为调试的log输出 
2.作为js代码的执行坏境可以直接在console中写JavaScript代码 如: 
3.可以用来直接编辑页面在console中输入 document.designMode = “on” 
二 Element基本功能 
1.可以用来查看网页的HTML元素 
 
 2.右侧的style可以调试页面的样式属性，是前端布局样式调]]></description><category></category></item><item><title><![CDATA[vue.js的使用总结（1）基础篇]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/78869048</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/78869048</guid><author>pro_monkeyking</author><pubDate>Fri, 22 Dec 2017 00:30:01 +0800</pubDate><description><![CDATA[最近公司要求使用vue.js开发一款PC端的应用，大约用时4个月完成，在此之前只是了解过vue.js，在项目完成后对vuejs的相关内容也有了大致的了解，为了加强自身的记忆，对vue的相关知识进行总结梳理，方便以后的开发。如有不足之处请各位道友批评指正。 
基础篇： 
先上张xmind思维导图 


注：vue的基本知识内容比较多，此处总结自己认为在vue中比较难理解和重要的知识点 
 1. vu...]]></description><category></category></item><item><title><![CDATA[vue2.x 项目搭建]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/78660814</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/78660814</guid><author>pro_monkeyking</author><pubDate>Wed, 29 Nov 2017 00:28:42 +0800</pubDate><description><![CDATA[环境搭建 
a) 下载node.js  http://nodejs.cn/download/ 
   安装完成后添加到坏境变量 
b) 全局安装 vue-cli 
  npm install -g vue-cli(输入 vue -V输出版本号则为安装成功)
新建项目 
a)进入你需要新建项目的目录输入： 
vue init webpack test（一直回车即可） 
结束后会生成一个test的文件夹]]></description><category></category></item><item><title><![CDATA[node学习之路（四）net模块实现tcp通信]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/77750783</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/77750783</guid><author>pro_monkeyking</author><pubDate>Thu, 31 Aug 2017 18:17:13 +0800</pubDate><description><![CDATA[点击进入官网net模块API 
在node中net模块专门用于tcp服务器和tcp客户端的通信。1.实现步骤如下创建tcp连接 
var server=net.createServer([options],[callBackFunc1]); 
监听客户端请求 
server.listen(port,[host],[backlog],[callbackFunc2]); 
参数说明 
callBackF]]></description><category></category></item><item><title><![CDATA[node学习之路（三）文件操作]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/76548441</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/76548441</guid><author>pro_monkeyking</author><pubDate>Tue, 01 Aug 2017 20:05:00 +0800</pubDate><description><![CDATA[最近学习了node的fs模块，在此与大家分享所得。不妥之处请诸位道友批评指正。
1.文件操作的同步与异步
当今异步操作横行编程界，node也是以异步编程为大家所称道。在node的文件操作中也是
以异步为主，同步为辅（虽然存在感低，但我也是存在的）。
异步方法：readFile(......),writeFile(......),appendFile(......),open(......)]]></description><category></category></item><item><title><![CDATA[node学习之路（二）Buffer对象]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/76393691</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/76393691</guid><author>pro_monkeyking</author><pubDate>Sun, 30 Jul 2017 19:03:58 +0800</pubDate><description><![CDATA[在js中对于二进制数据没有进行很好的支持（前端中二进制数据用的较少）。
但是在出路TCP流和文件流数据时，二进制数据处理不可避免。因此node
定义了一个Buffer类来处理二进制数据流。
1.创建Buffer类
Buffer类和其他类的创建并无区别，只需要new其对象即可。
注：Buffer类有一个length属性，用来规定Buffer类的长度。
第一种：var buf=new Bu]]></description><category></category></item><item><title><![CDATA[grunt构建工具使用总结（二）Gruntfile文件配置]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/75584063</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/75584063</guid><author>pro_monkeyking</author><pubDate>Fri, 28 Jul 2017 16:14:38 +0800</pubDate><description><![CDATA[启动grunt必须新建一个Gruntfile文件，在文件中必须写的代码：

module.exports = function (grunt) {}

grunt所用的配置都写在此函数中。
本节主要谈谈一下几点设置：concat(合并)，uglify（压缩），watch（监视），jshint（代码规范）
1.代码合并插件（concat）
在现在的前端项目中代码合并是项目]]></description><category></category></item><item><title><![CDATA[grunt构建工具使用总结（一）环境搭建]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/75333076</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/75333076</guid><author>pro_monkeyking</author><pubDate>Thu, 20 Jul 2017 09:07:10 +0800</pubDate><description><![CDATA[前一个项目中，项目组长要求我们用grunt来构建项目，这里总结了一些工作经验供大家学习参考。


1.安装nodejs
https://nodejs.org/
下一步下一步下一步、的安装方式，这里不再赘述
安装了nodejs之后，可以在你的控制台中输入“node -v”试验nodejs是否安装成功。


2.npm(npm是nodejs自带的包管理工具，所以不用再安装)
//创]]></description><category></category></item><item><title><![CDATA[webpack构建工具安装]]></title><link>https://blog.youkuaiyun.com/pro_monkeyking/article/details/75138045</link><guid>https://blog.youkuaiyun.com/pro_monkeyking/article/details/75138045</guid><author>pro_monkeyking</author><pubDate>Fri, 14 Jul 2017 23:26:49 +0800</pubDate><description><![CDATA[一环境搭建,安装webpack工具最好是在node的环境下使用npm
1.      安装nodejs：官网下载安装，设置为全局的环境变量
 
node –v测试安装成功
 
2.      npm包管理器（node安装时已经顺带安装）
      npm –v测试安装成功
3.      全局安装webpack
 
npm install –g webpack

4.   ]]></description><category></category></item></channel></rss>