<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[JerryHmr的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/JerryHmr</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; JerryHmr]]></copyright><item><title><![CDATA[【无标题】]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/128223012</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/128223012</guid><author>JerryHmr</author><pubDate>Wed, 07 Dec 2022 17:33:55 +0800</pubDate><description><![CDATA[1、什么是 Generator 函数在Javascript中，一个函数一旦开始执行，就会运行到最后或遇到return时结束，运行期间不会有其它代码能够打断它，也不能从外部再传入值到函数体内而Generator函数（生成器）的出现使得打破函数的完整运行成为了可能，其语法行为与传统函数完全不同Generator函数是ES6提供的一种异步编程解决方案，形式上也是一个普通函数，但有几个显著的特征：–  function关键字与函数名之间有一个星号 “*” （推荐紧挨着function关键字）
–  函数体内使用 y]]></description><category></category></item><item><title><![CDATA[前端表格数据导出至Excel]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/107149770</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/107149770</guid><author>JerryHmr</author><pubDate>Mon, 06 Jul 2020 10:09:53 +0800</pubDate><description><![CDATA[引入js-xlsx插件
1、script标签引入
&lt;script lang="javascript" src="dist/xlsx.full.min.js"&gt;&lt;/script&gt;

2、使用npm安装如下模块
npm install xlsx --save

这里以.vue文件为例
1、引入xlsx模块
import XLSX from 'xlsx'

2、表格部分（这里用的是elementUI表格组件）
&lt;div class="top-level-element"&gt;
  ]]></description><category></category></item><item><title><![CDATA[vue-perfect-scrollbar的应用]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/106804532</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/106804532</guid><author>JerryHmr</author><pubDate>Wed, 17 Jun 2020 14:27:36 +0800</pubDate><description><![CDATA[安装
npm install vue-perfect-scrollbar

应用
import VuePerfectScrollbar from 'vue-perfect-scrollbar/index.vue'
export default {
  components: {
    VuePerfectScrollbar
  },
  //...
}

example
&lt;template&gt;
  &lt;VuePerfectScrollbar class="scroll-area" v-onc]]></description><category></category></item><item><title><![CDATA[axios的封装]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/106788897</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/106788897</guid><author>JerryHmr</author><pubDate>Tue, 16 Jun 2020 16:43:00 +0800</pubDate><description><![CDATA[一、axios的封装
在vue项目中，和后台交互获取数据这块，我们通常使用的是axios库，它是基于promise的http库，可运行在浏览器端和node.js中。他有很多优秀的特性，例如拦截请求和响应、取消请求、转换json、客户端防御cSRF等。所以我们的尤大大也是果断放弃了对其官方库vue-resource的维护，直接推荐我们使用axios库。如果还对axios不了解的，可以移步axios文档。
安装
npm install axios;      // 安装axios复制代码
引入
一般我会在项目的]]></description><category></category></item><item><title><![CDATA[node版本的升级和降级]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/106788776</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/106788776</guid><author>JerryHmr</author><pubDate>Tue, 16 Jun 2020 15:45:57 +0800</pubDate><description><![CDATA[在开发的工程中，我们可能需要经常切换node版本来应对不同的开发环境，所以需要经常使用不同版本的node
一、安装npm插件n ,通过n模块来管理node版本
1、全局安装n模块
npm instlal -g n
2、安装当前稳定版本
n stable或者sudo n stable
3、安装最新版本的
n latest或者sudo n latest
4、安装指定版本的node
n v8.16.0
5、卸载指定的node版本
nrm v8.16.0
二、使用nvm管理node版本
1、安装nvm
brew i]]></description><category></category></item><item><title><![CDATA[ssh连接gitlab,免密码登录]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/106788656</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/106788656</guid><author>JerryHmr</author><pubDate>Tue, 16 Jun 2020 15:42:22 +0800</pubDate><description><![CDATA[第一步：检查是否存在SSH秘钥
1.Enter&nbsp;ls -al ~/.ssh&nbsp;to see if existing SSH keys are present1.0
2.如果显示ls: 无法访问/root/work/.ssh: 没有那个文件或目录&nbsp;表示目录不存在，ssh不存在
第二步：生成 SSH key.
1.输入指令：
$ ssh-keygen -t rsa -C "your_email@...]]></description><category></category></item><item><title><![CDATA[放大镜效果_面向对象版]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/103536169</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/103536169</guid><author>JerryHmr</author><pubDate>Sat, 14 Dec 2019 09:42:42 +0800</pubDate><description><![CDATA[放大镜效果
&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;

&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
    &lt;meta http-equ...]]></description><category></category></item><item><title><![CDATA[获取网页被卷去的高度scrollTop]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/103445574</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/103445574</guid><author>JerryHmr</author><pubDate>Sun, 08 Dec 2019 15:45:34 +0800</pubDate><description><![CDATA[网页可见区域宽： document.body.clientWidth;
网页可见区域高：&nbsp;document.body...]]></description><category></category></item><item><title><![CDATA[用JS模拟复选框的样式]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/103445256</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/103445256</guid><author>JerryHmr</author><pubDate>Sun, 08 Dec 2019 15:24:59 +0800</pubDate><description><![CDATA[JS模拟复选框的样式
&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;

&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
    &lt;meta htt...]]></description><category></category></item><item><title><![CDATA[随机点名小案例]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/103317584</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/103317584</guid><author>JerryHmr</author><pubDate>Fri, 29 Nov 2019 20:32:07 +0800</pubDate><description><![CDATA[随机点名小案例
1，两个按钮操作：
&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;

&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
    &lt;m...]]></description><category></category></item><item><title><![CDATA[五大常用居中]]></title><link>https://blog.youkuaiyun.com/JerryHmr/article/details/103218836</link><guid>https://blog.youkuaiyun.com/JerryHmr/article/details/103218836</guid><author>JerryHmr</author><pubDate>Sat, 23 Nov 2019 22:55:14 +0800</pubDate><description><![CDATA[五大居中1
利用伪元素：after和vertical-align
1，首先在里面创建两个div,父元素div给一个class：fu;子元素div给一个class:zi;
2，给父子元素一个宽高和背景色以便在浏览器中显示；
3，利用display:inline-block将要居中的.zi转成行内块元素；
4，在.box最后加一个伪元素：after（必须要有content:"";才能生效），也转成行内...]]></description><category></category></item></channel></rss>