摘要: 通用设计模式 介绍 设计模式(design pattern)本质上是把经常用到的代码套路,归纳总结后系统的表达出来。 设计模式好处有以下几点: 为开发人员对代码的阅读和编写提供一种指导思想; 提高开发人员自身的代码质量,提高对其他框架和库源码阅读的能力; 网络上流行的”23种设计模式”是静态语言在生 阅读全文
posted @ 2021-01-05 11:22 sk-xm 阅读(136) 评论(0) 推荐(0)
摘要: webpack官网 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或 阅读全文
posted @ 2020-12-30 09:51 sk-xm 阅读(107) 评论(0) 推荐(0)
摘要: 每个系列通过 type 决定自己的图表类型: type: 'bar':柱状/条形图 type: 'line':折线/面积图 type: 'pie':饼图 type: 'scatter':散点(气泡)图 type: 'effectScatter':带有涟漪特效动画的散点(气泡) type: 'rada 阅读全文
posted @ 2020-11-27 10:13 sk-xm 阅读(149) 评论(0) 推荐(0)
摘要: <!-- 1. JSX 语法的转化过程 --> JSX 仅仅是 createElement() 方法的语法糖(简化语法) JSX 语法被 @babel/preset-react 插件编译为 createElement() 方法 React 元素:是一个对象,用来描述你希望在屏幕上看到的内容 JSX 阅读全文
posted @ 2020-11-21 00:28 sk-xm 阅读(119) 评论(0) 推荐(0)
摘要: 浏览器从输入地址到页面输出 主要流程 DNS原理 DNS(Domain Name Server)用来返回某个域名对应主机的ip的服务器 根DNS (.) 只负责提供各类顶级DNS服务器ip地址. 是域名解析的入口. 顶级DNS (TLD, Top Level Domain) 负责提供二级域名的DNS 阅读全文
posted @ 2020-11-15 19:44 sk-xm 阅读(212) 评论(0) 推荐(0)
摘要: web安全 浏览器端防御 xss 什么是 XSS Cross-Site Scripting(跨站脚本攻击)简称 XSS,是一种代码注入攻击。攻击者通过在目标网站上注入恶意脚本,使之在用户的浏览器上运行。利用这些恶意脚本,攻击者可获取用户的敏感信息如 Cookie、SessionID 等,进而危害数据 阅读全文
posted @ 2020-11-06 01:03 sk-xm 阅读(237) 评论(0) 推荐(0)
摘要: ###渲染进程是多线程的: GUI渲染线程 o 负责渲染浏览器界面,解析HTML,CSS,构建DOM树和RenderObject树,布局和绘制等。 o 当界面需要重绘(Repaint)或由于某种操作引发回流(reflow)时,该线程就会执行 o 注意,GUI渲染线程与JS引擎线程是互斥的,当JS引擎 阅读全文
posted @ 2020-10-08 22:12 sk-xm 阅读(142) 评论(0) 推荐(0)
摘要: 1. Canvas概述 1.1 Canvas是什么 Canvas又称为“画布”,是HTML5的核心技术之一,通常说的Canvas技术,指的就是使用Canvas元素结合JavaScript来绘制各种图形的技术。 1.2 Canvas的用途 1)绘制图形;2)绘制图表;3)动画效果;4)游戏开发。 1. 阅读全文
posted @ 2025-11-12 15:59 sk-xm 阅读(3) 评论(0) 推荐(0)
摘要: 前言 整理了一下vue3多页面结构和vite.config.ts配置, 提供一种MPA思路, 最终实现打包 1. vite.config.ts 完整配置 import { fileURLToPath, URL } from 'node:url' import path from 'path' imp 阅读全文
posted @ 2025-07-23 15:51 sk-xm 阅读(429) 评论(0) 推荐(0)
摘要: 1. 持续集成(CI)的实现 持续集成是指开发人员频繁地将代码集成到共享仓库中,并通过自动化测试来验证代码的正确性。以下是实现 CI 的关键步骤: 1.1 版本控制 代码仓库: 使用 Git 等版本控制工具管理代码,确保所有开发人员都在同一个代码库上工作。 分支策略: 采用合适的分支策略(如 Git 阅读全文
posted @ 2025-06-30 13:18 sk-xm 阅读(42) 评论(0) 推荐(0)
摘要: window版 快捷键 相关说明 Ctrl +Q 查看API说明⽂档(官方神器) Ctrl +F 查找 Ctrl +shift+F 全局查找 Ctrl +R 替换 Ctrl +shift+R 全局替换 Ctrl +Z 撤销 Ctrl +D 当前行+1 Ctrl +Y 删除当行 Ctrl + Ente 阅读全文
posted @ 2024-08-26 09:27 sk-xm 阅读(818) 评论(0) 推荐(0)
摘要: 登录方式的演变过程,大致可以分为四个阶段。 阶段一:账号+密码登录 账号+密码登录是传统的登录方式,也是早期市场上最普遍的登录方式,用户凭自己注册时设置账号和密码在登录时使用,虽然简单粗暴,也确实能够满足用户鉴权的场景,但缺点也是显而易见: 用户层面: 记忆成本高:要求用户记住自己的账号和密码,当用 阅读全文
posted @ 2024-06-26 11:22 sk-xm 阅读(203) 评论(0) 推荐(0)
摘要: 1, HTMLElement 和 Element <div id="divClick"></div> const docu = document.getElementById('divClick'); const docu1 = document.querySelector('#divClick') 阅读全文
posted @ 2024-04-18 17:59 sk-xm 阅读(2175) 评论(0) 推荐(0)
摘要: 主要是写了一个大体的思路,需微调整 import Compressor from 'compressorjs' import {satrtUpload,satrtBinaryUpload,remuseUpload, remuseBinaryUpload} from serviceData // 转b 阅读全文
posted @ 2023-09-27 10:33 sk-xm 阅读(196) 评论(0) 推荐(0)
摘要: ## 1.概述 1. React Router 以三个不同的包发布到 npm 上,它们分别为: 2. react-router: 路由的核心库,提供了很多的:组件、钩子。 3. **react-router-dom:** 包含react-router所有内容,并添加一些专门用于 DOM 的组件,例如 阅读全文
posted @ 2023-06-25 22:07 sk-xm 阅读(48) 评论(0) 推荐(0)
摘要: # 3. 手写组合API ## 1) shallowReactive 与 reactive ```js const reactiveHandler = { get (target, key) { if (key '_is_reactive') return true return Reflect.g 阅读全文
posted @ 2023-06-25 22:00 sk-xm 阅读(48) 评论(0) 推荐(0)
摘要: 1.节流 throttle API _.throttle(func, [wait=0], [options={}]) func (Function): 要节流的函数。 [wait=0] (number): 需要节流的毫秒数。 [options={}] (Object): 选项对象。 [options 阅读全文
posted @ 2023-04-18 16:04 sk-xm 阅读(5017) 评论(0) 推荐(0)
摘要: 1. 开始使用vue-pdf这个插件, 发现它只适用于页码小的文件, 文件大了容易卡顿奔溃 (建议小文件使用,比较方便) 2. 然后做优化, 在包裹pdf显示外层div添加滚动事件, 初始渲染的页数不要显示总页数,可以自己定义设置想要的页数如初始显示10页,显示少一些卡顿有效缓解, 监听滚动做分页功 阅读全文
posted @ 2022-10-25 17:37 sk-xm 阅读(1348) 评论(0) 推荐(0)
摘要: 1. Alert.vue <template> <div v-if="isShow"> <div class="ui dialog-overlay" /> <div class="dialog_pop"> <div v-if="isTitleText" class="pop_tit"> <h3 v- 阅读全文
posted @ 2022-06-01 08:57 sk-xm 阅读(582) 评论(0) 推荐(1)
摘要: 1. 打开窗口即最大化 self.moveTo(0,0) self.resizeTo(screen.availWidth,screen.availHeight) 2. 自定义窗口方法 // url String 域名 // title String 标题 // w String 宽度 // h St 阅读全文
posted @ 2022-04-25 13:47 sk-xm 阅读(1058) 评论(0) 推荐(0)
摘要: 1. 引入转换js文件: import calendarFormatter from '@/common/dateChange.js' 2. 公历转农历: let nongli = calendarFormatter.solar2lunar(2020,5,26); console.log(nongl 阅读全文
posted @ 2022-04-15 13:34 sk-xm 阅读(1433) 评论(0) 推荐(0)
摘要: vue-cli3 脚手架搭建完成后,项目目录中没有 vue.config.js 文件,需要手动创建 vue.config.js 是一个可选的配置文件,如果项目的 (和 package.json 同级的) 根目录中存在这个文件,那么它会被 @vue/cli-service 自动加载。你也可以使用 pa 阅读全文
posted @ 2022-02-26 19:40 sk-xm 阅读(847) 评论(0) 推荐(1)