- 博客(30)
- 收藏
- 关注
原创 mysql 忘记密码,报错: ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ Mysql centos
centos mysql 忘记密码
2022-09-21 17:21:12
305
转载 git 删除本地所有未提交的更改
原文链接 https://www.jianshu.com/p/10f4d811985egit rm --cached :已 add(tracked) 未 commit 的文件,使其回到未 add 状态(untracked)。git rm -f : 从本地删除已 add 的文件。git checkout – :有修改的文件回到 tracked 状态,对已 tracked 的文件撤销修改。git reset HEAD :撤销 commit,回到 modified 状态。git reset --sof
2022-01-01 12:07:54
4735
转载 vue+vxe-table中的vxe-table-column配合v-if导致列样式与位置错乱_ShaLiWa的博客-程序员秘密
原文地址https://www.cxymm.net/article/ShaLiWa/119773845
2021-12-21 16:02:52
592
转载 nginx 基本使用
原文地址 https://www.cnblogs.com/boonya/p/7907999.html安装所需环境Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境。一. gcc 安装安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:yum install gcc-c++二. PCRE pcre-devel 安装PCRE(Perl Compatib
2021-12-15 20:39:28
67
原创 vue 源码详解(零):Vue 源码流程图
vue 源码详解(零):Vue 源码流程图最近在研究 Vue 的源码, 整理博客, 结果想到的、看到的内容实在是太多了, 不知道从何写起, 故整理了一个大致的流程图,根据这个顺序进行一一整理。为了表达出关键信息,流程图中主流程和子流程有不严谨的地方,后续会针对每一个子流程进行逐一剖析细化。Vue 大致的流程都在图上做了标记, 大致如下( Vue 实例用 vm 表示 ) :声明 Vue 构造函数;构建 Vue 原型对象,丰富 vm 实例上的属性和方法;构建 Vue 静态方法和属性, 使得 Vue
2021-08-21 15:12:54
948
原创 vue 源码详解(三): 渲染初始化 initRender 、生命周期的调用 callHook 、异常处理机制
vue 源码详解(三): 渲染初始化 initRender 、生命周期的调用 callHook 、异常处理机制1 渲染初始化做了什么在 Vue 实例上初始化了一些渲染需要用的属性和方法:将组件的插槽编译成虚拟节点 DOM 树, 以列表的形式挂载到 vm 实例,初始化作用域插槽为空对象;将模板的编译函数(把模板编译成虚拟 DOM 树)挂载到 vm 的 _c 和 $createElement 属性;最后把父组件传递过来的 $attrs 和 $listeners 定义成响应式的。// node_m
2021-08-12 15:57:11
763
原创 vue 源码详解(二): 组件生命周期初始化、事件系统初始化
vue 源码详解(二): 组件生命周期初始化、事件系统初始化上一篇文章 生成 Vue 实例前的准备工作 讲解了实例化前的准备工作, 接下来我们继续看, 我们调用 new Vue() 的时候, 其内部做了哪些工作。1. 从 Vue 构造函数开始new Vue(options) 时, Vue 构造函数中只有一句代码 this._init(options) 。 通过执行这个函数顺次调用了下边代码中注释处 1 ~ 10 的代码, 下面就按照代码的执行顺序,依次解释下每个函数的作用。let uid = 0
2021-07-30 16:08:17
219
原创 vue 源码详解(一):原型对象和全局 `API`的设计
vue 源码详解(一): 生成 Vue 实例前的准备工作1. 从 new Vue() 开始vue/src/core/index.js :import Vue from './instance/index' // 1. 引入 Vue 构造函数import { initGlobalAPI } from './global-api/index' // 2. 引入初始化全局 API 的依赖import { isServerRendering } from 'core/util/env'import {
2021-07-29 17:34:08
1110
原创 从 vue 源码抄来的浏览器类型检测
直接贴代码// Browser environment sniffingexport const inBrowser = typeof window !== 'undefined'export const inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platformexport const weexPlatform = inWeex && WXEnvironment.platform
2021-07-28 14:47:56
121
原创 散列表(哈希表) `HashTable`
散列表(哈希表) HashTable散列表是字典的一种实现, ES6 对字典的实现是 Map ,js中没有字典这种数据结构, 其实普通的 js 对象也可以看成是一个字典。散列表的特点存储和读取特别快, 时间复杂度约为 O(1)。一般数组、链表等顺序表查找一个元素需要遍历全部元素, 而散列表可以通过散列函数实现快速查找和快速插入。散列函数有个缺点, 容易发生值的碰撞。而且理论上没有完美的散列函数, 样本足够大,总会发生碰撞。解决散列函数碰撞的常见方法有分离链接、线性探查和双散列法等。详见下。1. 实
2021-07-27 14:37:43
131
原创 Python 基础知识笔记,没事翻一翻
基础布尔值:NoneFalse所有值为0的数字(0,0.0,0L,0.0+0.0j)空字符串 “”空列表空元祖空字典a is b 实际调用的是 id(a) == id(b)浮点数浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的python 文件开头第一行告诉mac/linux 文件是可执行文件第二行指定编码为utf8#!/usr/bin/env python
2021-07-22 17:55:01
512
原创 Python 中的不定长参数
直接贴代码吧, 代码上边有注释。# *agrs 会把剩余参数组成一个元组# 在 f1 函数内部, 如果,使用 args 将得到剩余参数组成的一个元组# 使用 *args 得到所有的剩余参数, 在闭包和装饰器中应用比较方便def f1(a,b,*args): print(a,b,args) print(a,b,*args)f1(1,2,3,4,5)# 1 2 (3, 4, 5)# 1 2 3 4 5# 以命名参数传递给 **kwagrs 的剩余参数将会被组成一个字典de
2021-07-22 17:33:53
75
原创 JavaScript数据结构与算法:集合与集合的扩展
集合 Set1. Set 特点集合内部元素唯一, 不允许重复, 支持增删改查的操作。由于 JavaScript 实现了 ES6 中的 Set 类, 而且 Set 类也比较完善了。所以只需要扩展一下高级功能(并集、差集、交集、补集、子集)就可以愉快地使用了。2. 注意事项集合的每个元素并不仅仅是一个值, 而是一个键值对, 当运行以下代码时 const s = new Set([1,2,3]), 并不是单单向集合内插入 1,2,3 这 3 个值, 而是以 [1,1], [2,2], [3,3] 这
2021-07-21 15:59:38
118
原创 数据结构与算法JavaScript实现:链表,双向链表,循环链表,约瑟夫环
链表 (LinkList)1. 链表的特点2. 实现链表条件设定:链表的节点都应通过 Node 类实例化得到链表实例化时,自动生成头部节点, new Node('head'), 其 next 属性默认为 null头部节点不计入链表的总长度链表最后一个节点的 next 属性永远指向 null代码 // 节点类// 每个节点包含节点的值和节点下一个节点的引用(`next`属性)// 刚初始化的节点默认指向 nullclass Node { constructor(v
2021-07-19 18:03:52
137
2
原创 数据结构与算法JavaScript描述: 队列,优先队列,循环队列,双端队列
队列队列是一种先进先出(First-In-First-Out,FIFO)的数据结构。可以联想一下小朋友排队打疫苗, 排在前头的先打, 排在后边的后打。打完疫苗的朋友就可以回家了(出队),刚到的朋友需要排队(入队)。1. 实现队列class Queue { constructor(store = []) { this.store = store } // 入队 enqueue(...args) { this.store.push(...args) } // 出队
2021-07-15 15:19:45
153
原创 数据结构与算法JavaScript描述:栈与栈的应用(匹配括号)
0. 栈是什么栈是一种后进先出(LIFO, last in first out)的数据结构, 可以联想子弹夹、一摞盘子、浏览器历史记录等, 实际上, 在 JS 中, 数组本身也可以当做栈, 或者是队列使用, 栈和队列的绝大多数接口可以直接调用数组的接口实现。1. 栈的实现/** * @description 栈 * 栈是一种后进先出(LIFO, last in first out)的数据结构, 可以联想子弹夹、一摞盘子 * 本例是基于数组实现的栈, * 实际上, 在 JS 中, 数组本身也
2021-07-14 14:18:19
155
原创 绘制二次贝塞尔曲线(二次贝兹曲线)等距线:让 IE 支持 canvas接口 isPointInPath
一、背景:在使用 canvas 做知识图谱的时,实体关系使用线宽为 1px 的线绘制, 用户必须点在线上, 才能正常拾取到点击的边。产品提议,线不能加粗, 否则图谱展示大量数据时, 有碍美观。 IE 浏览器不支持 canvas 判断点击事件源是否在路径上的接口 sPointInstroke ; 而对 isPointInPath 的支持,仅限于中心线封闭出来的路径, 中心线外侧的部分能通过 isPointInPath 判断是无效的,也就是说, 加宽线宽在 IE 浏览器是无法正常使用 isPointInPat
2021-06-30 16:35:43
597
1
原创 console.log 打印引用类型变量问题
console.log 打印引用类型变量问题一、现象1. 在浏览器环境中<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, init
2021-06-10 18:23:05
1927
原创 promise详解 : 实现promise(附实现代码)
promise then 的特点 :then 函数的返回值是一个 promise, 可以继续调用 then 函数回调函数 resolve 和 reject 的参数 value /reason, 可以传递给 then函数的回调函数, 最终 resolve(res) 的res 传递给了 then(onFulfilled(v)=>{},onrejected(e)=>{}) 中的 v, 而 reject(err) 中的 err 传递给了其中的 ethen 函数的回调函数的返回值可以分成 :
2021-04-19 11:29:15
2469
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人