<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[saikuuga的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/saikuuga</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; saikuuga]]></copyright><item><title><![CDATA[手写 vue-router]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/126946106</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/126946106</guid><author>saikuuga</author><pubDate>Tue, 20 Sep 2022 09:18:28 +0800</pubDate><description><![CDATA[前端路由就是匹配不同的 URL 路径，进行解析，然后动态地渲染出区域 HTML 内容。但是这样存在URL 每次变化都会造成页面的刷新。在 2014 年之前，大家是通过 hash 来实现前端路由，URL hash 中的 # 就是类似于下面代码中的这种 # ：之后，在进行页面跳转的操作时，hash 值的变化并不会导致浏览器页面的刷新，只是会触发 hashchange 事件。在下面的代码中，通过对 hashchange 事件的监听，我们就可以在 fn 函数内部进行动态地页面切换。]]></description><category></category></item><item><title><![CDATA[vue3 虚拟DOM的diff算法]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125882185</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125882185</guid><author>saikuuga</author><pubDate>Tue, 20 Sep 2022 09:03:41 +0800</pubDate><description><![CDATA[我们再看一下这个题，贪心的思路就是在寻找最长递增的序列，所以，[1,3]要比[1,5]好，也就是说，在这个上升的序列中，我们要让上升速度尽可能变得慢，这样才有可能让后面的元素尽可能也递增。上面代码的思路，我们用下图演示。上一讲我们详细介绍了在虚拟 diff 计算中，如果新老子元素都是数组的时候，需要先做首尾的预判，如果新的子元素和老的子元素在预判完毕后，未处理的元素依然是数组，那么就需要对两个数组计算 diff，最终找到最短的操作路径，能够让老的子元素通过尽可能少的操作，更新成为新的子元素。]]></description><category></category></item><item><title><![CDATA[JS 运行机制]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125629155</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125629155</guid><author>saikuuga</author><pubDate>Tue, 05 Jul 2022 22:31:11 +0800</pubDate><description><![CDATA[摘抄《大前端技术之路》]]></description><category></category></item><item><title><![CDATA[esLint原理]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125629005</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125629005</guid><author>saikuuga</author><pubDate>Tue, 05 Jul 2022 22:04:51 +0800</pubDate><description><![CDATA[ESLint]]></description><category></category></item><item><title><![CDATA[架构设计的原则]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125628936</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125628936</guid><author>saikuuga</author><pubDate>Tue, 05 Jul 2022 21:56:55 +0800</pubDate><description><![CDATA[架构设计]]></description><category></category></item><item><title><![CDATA[栈空间和堆空间]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125628902</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125628902</guid><author>saikuuga</author><pubDate>Tue, 05 Jul 2022 21:54:09 +0800</pubDate><description><![CDATA[堆栈]]></description><category></category></item><item><title><![CDATA[正则表达式]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125628873</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125628873</guid><author>saikuuga</author><pubDate>Tue, 05 Jul 2022 21:52:33 +0800</pubDate><description><![CDATA[正则]]></description><category></category></item><item><title><![CDATA[基于.NET 的一些开源框架和项目]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125600001</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125600001</guid><author>saikuuga</author><pubDate>Mon, 04 Jul 2022 14:49:09 +0800</pubDate><description><![CDATA[wiindows开发]]></description><category></category></item><item><title><![CDATA[V8工作图]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125599790</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125599790</guid><author>saikuuga</author><pubDate>Mon, 04 Jul 2022 14:40:48 +0800</pubDate><description><![CDATA[v8]]></description><category></category></item><item><title><![CDATA[TCP/IP]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125599364</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125599364</guid><author>saikuuga</author><pubDate>Mon, 04 Jul 2022 14:27:40 +0800</pubDate><description><![CDATA[计算机网络]]></description><category></category></item><item><title><![CDATA[Http协议]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125599289</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125599289</guid><author>saikuuga</author><pubDate>Mon, 04 Jul 2022 14:23:35 +0800</pubDate><description><![CDATA[http相关]]></description><category></category></item><item><title><![CDATA[CSS 架构]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125597947</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125597947</guid><author>saikuuga</author><pubDate>Mon, 04 Jul 2022 14:09:22 +0800</pubDate><description><![CDATA[css]]></description><category></category></item><item><title><![CDATA[Linux命令]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125597920</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125597920</guid><author>saikuuga</author><pubDate>Mon, 04 Jul 2022 13:04:25 +0800</pubDate><description><![CDATA[linux常用指令]]></description><category></category></item><item><title><![CDATA[前端工作设计规范]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125595693</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125595693</guid><author>saikuuga</author><pubDate>Mon, 04 Jul 2022 11:04:46 +0800</pubDate><description><![CDATA[前端设计]]></description><category></category></item><item><title><![CDATA[Web基础技术开发设计规范]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/125595656</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/125595656</guid><author>saikuuga</author><pubDate>Mon, 04 Jul 2022 10:49:41 +0800</pubDate><description><![CDATA[前端开发规范]]></description><category></category></item><item><title><![CDATA[Vue 自定义指令]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/123734834</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/123734834</guid><author>saikuuga</author><pubDate>Fri, 25 Mar 2022 15:43:58 +0800</pubDate><description><![CDATA[Vue自定义指令有全局注册和局部注册两种方式。先来看看注册全局指令的方式，通过 Vue.directive( id, [definition] ) 方式注册全局指令。

批量注册指令，新建 directives/index.js 文件。然后在入口文件中进行 Vue.use() 调用。


import copy from './copy'
import longpress from './longpress'
// 自定义指令
const directives = {
  copy,
  longpress]]></description><category></category></item><item><title><![CDATA[Vue3设计方案-使用服务方式来调用vue组件]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/123635747</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/123635747</guid><author>saikuuga</author><pubDate>Mon, 21 Mar 2022 15:30:30 +0800</pubDate><description><![CDATA[在用 elementUI、antdUI 等 ui 框架的时候，都会用到 Message 全局的提示方法，而平时常用的 Vue 组件都是写成 tag 来使用，而 Message 等组件的使用方式则不同，不用引入 Message 的 vue 组件，用 js 就能

接下来将上面组件改写成用 js 调用的方式：

在改写之前，还需要了解 vue3 的几个全局 API:

defineComponent: 将函数或者对象转换成对象返回
	h: 将组件对象转换成 vnode
	render：将 vnode 挂载到..]]></description><category></category></item><item><title><![CDATA[JS高阶函数 第一章]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/123579282</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/123579282</guid><author>saikuuga</author><pubDate>Fri, 18 Mar 2022 19:03:34 +0800</pubDate><description><![CDATA[javascript的高阶函数]]></description><category></category></item><item><title><![CDATA[Vue高阶函数-vue-property-decorator]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/123530274</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/123530274</guid><author>saikuuga</author><pubDate>Wed, 16 Mar 2022 17:33:14 +0800</pubDate><description><![CDATA[1、vue-property-decorator

这个组件完全依赖于vue-class-component.它具备以下几个属性:

@Component (完全继承于vue-class-component)
	@Emit
	@Inject
	@Provice
	@Prop
	@Watch
	@Model
	Mixins (在vue-class-component中定义);
使用

当我们在vue单文件中使用TypeScript时,引入vue-property-decorator之后,script中的标签就]]></description><category></category></item><item><title><![CDATA[常用算法第一章]]></title><link>https://blog.youkuaiyun.com/saikuuga/article/details/123512933</link><guid>https://blog.youkuaiyun.com/saikuuga/article/details/123512933</guid><author>saikuuga</author><pubDate>Tue, 15 Mar 2022 22:03:32 +0800</pubDate><description><![CDATA[1、栈


class Stack {
    constructor() {
        this.list = []
    }

    // 进栈
    push(e) {
        this.list.push(e)
    }

    // 出栈
    pop() {
        return this.list.pop()
    }

    // 获取栈顶元素
    getTopElement() {
        return this.list[this.lis]]></description><category></category></item></channel></rss>