<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[shb7433185的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/shb7433185</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; shb7433185]]></copyright><item><title><![CDATA[前端文件下载的几种方式]]></title><link>https://blog.youkuaiyun.com/shb7433185/article/details/109364323</link><guid>https://blog.youkuaiyun.com/shb7433185/article/details/109364323</guid><author>shb7433185</author><pubDate>Thu, 29 Oct 2020 17:05:38 +0800</pubDate><description><![CDATA[前端开发中，经常遇到文件下载的功能。这里对常见的文件下载方式做一些总结。
一、直接下载
针对一些浏览器无法识别的文件格式。可以直接在地址栏上出入URL即可触发浏览器的下载功能。
同类的还有window.location.href、window.open

地址栏输入文件URL
window.location.href = URL
window.open(URL)

二、直接下载（使用a标签download属性）
直接下载仅使用的浏览器无法识别的文件。如果是浏览器支持的文件格式（如：html、jpg、png）]]></description><category></category></item><item><title><![CDATA[vant的picker组件设置文字超长滚动]]></title><link>https://blog.youkuaiyun.com/shb7433185/article/details/108636872</link><guid>https://blog.youkuaiyun.com/shb7433185/article/details/108636872</guid><author>shb7433185</author><pubDate>Thu, 17 Sep 2020 10:10:40 +0800</pubDate><description><![CDATA[我们的手机端使用vant来做前端UI框架。
今天在使用vant的picker组件时候，遇到了一个问题。当文字过长的时候，vant的处理方式是ellipsis，超长部分显示【…】
如果恰好省略号前边内容相同，用户就无法区分选项了。如图：

vant没有提供滚动的实现方式，所以我们自己兼容实现一下。
首先，打开开发者工具看下dom结构

我的思路是，如果在选中状态下，内层文字div长度大于外层的时候。给内层增加一个滚动动画效果。
实现如下：

重写.van-ellipsis两个样式，去掉ellipsis效果和o]]></description><category></category></item><item><title><![CDATA[js将list转化为tree格式的几种写法]]></title><link>https://blog.youkuaiyun.com/shb7433185/article/details/108519706</link><guid>https://blog.youkuaiyun.com/shb7433185/article/details/108519706</guid><author>shb7433185</author><pubDate>Thu, 10 Sep 2020 17:49:47 +0800</pubDate><description><![CDATA[最近在考虑一个树状结构存储。
最终需要将list转化为tree格式
源数据示例
源数据共401条
[{ "menuId" : "5f50c5fb8f0d74536bbfb7a4", "menuName" : "菜单管理", "parentMenuId" : null },
{ "menuId" : "5f524416ff216c2cbc554907", "menuName" : "频道管理", "parentMenuId" : "5f50c5fb8f0d74536bbfb7a4" },
{ "menuId"]]></description><category></category></item><item><title><![CDATA[mongodb单集合关联查询parent字段内容]]></title><link>https://blog.youkuaiyun.com/shb7433185/article/details/108508743</link><guid>https://blog.youkuaiyun.com/shb7433185/article/details/108508743</guid><author>shb7433185</author><pubDate>Thu, 10 Sep 2020 10:24:12 +0800</pubDate><description><![CDATA[最近在考虑一个树状结构存储。
使用的mongodb，同一张集合中，使用parentId来做关联。
查询的时候，希望将parent对应的name作为parentName返回回来。
集合内容示例
{ "_id" : ObjectId("5f50c5fb8f0d74536bbfb7a4"), "name" : "菜单管理", "parent" : "" }
{ "_id" : ObjectId("5f524416ff216c2cbc554907"), "name" : "频道管理", "parent" : "5f]]></description><category></category></item><item><title><![CDATA[使用nodejs实现模拟jenkins打包发布vue项目工程]]></title><link>https://blog.youkuaiyun.com/shb7433185/article/details/108298266</link><guid>https://blog.youkuaiyun.com/shb7433185/article/details/108298266</guid><author>shb7433185</author><pubDate>Sat, 29 Aug 2020 19:11:27 +0800</pubDate><description><![CDATA[前端工程化的今天，版本发布已经成为开发中的重要一环。
很多项目开发中都开始使用jenkins来做自动发版工作。
不过jenkins复杂的安装配置比较不容易上手，而且很多环境是不适用安装jenkins来做自动发版的。
我模拟Jenkins逻辑写了一个node版本的自动发版的程序。带大家了解一下自动发版的基本原理。同时，如果需要的朋友也可以直接上手来使用。
仓库地址和使用方式
使用方式：
&gt; git clone https://github.com/shb190802/node-jenkins.git
&]]></description><category></category></item><item><title><![CDATA[微信公众号开发入门]]></title><link>https://blog.youkuaiyun.com/shb7433185/article/details/107400736</link><guid>https://blog.youkuaiyun.com/shb7433185/article/details/107400736</guid><author>shb7433185</author><pubDate>Fri, 17 Jul 2020 09:29:59 +0800</pubDate><description><![CDATA[​		本文是主要是针对了解微信公众号开发或者进行过一些简单的开发，但是不成体系的开发者。前后端在参与公众号开发期间，主要承担的是各自的开发工作，前后端逻辑隔离较大。本文将从申请测试账号开始，选择常用的公众号功能，带大家体验完整的微信公众号开发的流程。
​		本文较长，至少需要1-2个小时的练习时间，可以收藏起来利用碎片时间学习。
​		本文后端代码使用nodejs
需要的前期准备：

对微信公众号开发的基本了解
nodejs基础知识
可通过公网访问的服务器（没有的可以去百度一个内网穿透的工具）【 http:]]></description><category></category></item><item><title><![CDATA[前端单页面应用缓存策略]]></title><link>https://blog.youkuaiyun.com/shb7433185/article/details/106095035</link><guid>https://blog.youkuaiyun.com/shb7433185/article/details/106095035</guid><author>shb7433185</author><pubDate>Wed, 13 May 2020 11:54:43 +0800</pubDate><description><![CDATA[在当前常用的单页面页面开发中。会将生产包发布为：固定名称的html文件和带hash的js、css文件。
所以我们需要保证html必须每次都实时请求服务器，但是js和css文件可以强缓存在本地，减少请求加速显示。
nginx配置如下：

/、/*.htm、/*.html文件配置协商缓存
**/*.js、/*.css文件配置强缓存 **

	location / {
		root   html;
		index  index.html index.htm;

		if ( $request_uri ~* /((]]></description><category></category></item><item><title><![CDATA[iview Form组件动态添加表单，并深层校验]]></title><link>https://blog.youkuaiyun.com/shb7433185/article/details/105834645</link><guid>https://blog.youkuaiyun.com/shb7433185/article/details/105834645</guid><author>shb7433185</author><pubDate>Wed, 29 Apr 2020 10:51:12 +0800</pubDate><description><![CDATA[今天遇到了iview动态添加表单，并且深度验证表单的问题。
功能如图：

科目可以动态新增，并且科目非空，成绩在0-100区间内。

html部分，v-for遍历form子属性scoreList。
内部FormItem prop规则为[子属性].[索引].[子属性]
rules手动指定

...
&lt;Table border :columns="column" :data="form.scor...]]></description><category></category></item><item><title><![CDATA[前端开发中常用的图片格式]]></title><link>https://blog.youkuaiyun.com/shb7433185/article/details/105806248</link><guid>https://blog.youkuaiyun.com/shb7433185/article/details/105806248</guid><author>shb7433185</author><pubDate>Tue, 28 Apr 2020 09:40:20 +0800</pubDate><description><![CDATA[在我们的日常开发中。必不可少会使用很多种图片。
我们需要根据业务场景来选择所使用的图片类型。
这里我整理了一些常用图片类型、他们的优缺点以及建议的使用场景。
如何在计算机中显示一张图片


我们使用的计算机都是以像素作为最小单位。


每一个像素在内存中需要使用 4 个字节，分别为 RGBA


1280*720*4 约等于 3.5M


图片格式，就是计算机存储图片数据的方式


根据图片数据存...]]></description><category></category></item></channel></rss>