Saber2pr's Blog
双系统重装后恢复ubuntu引导
使用 EasyBCD 修改引导文件,添加条目类型是 grub2 就可以了,分区自动检测。
编译原理
不确定下推自动机
Jsx语法BNF实现
理解递归下降分析和parsec应用
HTTP协议
HTTP加密
HTTP跨域之OPTIONS请求
为服务器配置HTTPS
基本概念
HTTP缓存机制
Typescript基础
axios拦截器类型
类型协变与逆变
Typescript类型运算
远程kv缓存优化
使用ts-compiler来遍历AST处理你的代码
对比Monad在TS和Haskell中的使用
MacOS相关
查看CPU架构
DS_Store文件
清理磁盘占用
React生态
react16以后不需要的一些操作
React-Redux干了什么
React生态源码阅读
useSelector和reselect源码阅读
hoist-non-react-statics源码阅读
Git版本控制
checkout
github与git
Git提交报错RPCfailed-HTTP2
设置用户名
rebase
pull自动合并使用本地版本
浅克隆
撤销上一次提交
检查最近1次提交变更内容
branch
使用密码连接github
fork之后更新upstream
git清除登录状态
日报生成
log
克隆git仓库中的文件夹或路径
Reflect反射原理
实现一个基于IOC的HttpServer框架
实现一个基于IOC的HttpServer框架(上)
实现一个基于IOC的HttpServer框架(下)
reflect-metadata中HashMap巨大Object的读取速度优化
依赖注入(IOC)实现
reflect-metadata实现及其原理
Javascript基础
JSONP跨域
返回网页顶部
canvas
rgba与hex转换
canvas路径绘制
打印到图片
ImageData操作
fiber遍历
localStorage缓存
组合子
vdom渲染
获取文件夹名
原型链
图片转base64
滚动到顶部
数组克隆-数组 ES6 API实现
常用工具函数包
矩形相交
深拷贝
判断是不是移动端
文件读取与文件拖拽上传
上传和发送图片
is常用判断
可迭代对象(iterable)
实现URL参数parser
classnames
进入视口范围检测
监听组合键
事件捕获冒泡
HTML特殊字符转义
ES7,ES8,ES9,ES10新特性
解决Promise竞态问题
获取元素距离文档顶部的距离
文件下载
剪贴板操作
保存文件到本地
监听拖拽
简单算法(需求)
join
双向绑定
rem布局原理
es7
async-await原理
类和继承
作用域和闭包
封装一个ajax
es6
promise原理
随机颜色
拖拽排序
节流防抖
判断页面滚动到底部(React)
tryAsync
iframe心跳检测
偏函数与柯理化
发布订阅
去除文档中nbsp
bind call apply和原理
Haskell基础
函数式设计
Haskell与JS
搭建haskell环境
函数式编程基本概念
React常用组件
Async Hook组件
读取一次即销毁的refValue
验证码发送计时组件
图片hover组件
Event Hook组件
ErrorBoundary异常处理组件
复制剪贴板hook
利用vsc-styled插件来写内联样式
图片预占位组件
React组件编写建议
下拉菜单
懒加载组件
其他常用命令
win常用命令
cad基础命令
基础设施建设
使用gitlab和drone实现自动化部署
CSS层叠样式表
解决z-index不起作用
常用layout
水平滚动容器
视觉设计
图片(替换型元素)内容填充和对齐方式
CSS3选择器
线性渐变
css实现八卦图
垂直居中
IOS安全区边距
styled-components使用
控制元素打印时样式
input样式重置
媒体查询
三角形
水平居中
伪元素实现分割线
flex
水平垂直居中
盒子模型
躲避点击
mask蒙版
C++基础
模板与constexpr
右值引用与移动语义
虚函数表
函数类型与函数指针
命名空间
qt图形库
qbs配置
Html2canvas
ios兼容
浏览器打印dom节点
每日总结:993966897/2837329691
2021-Q2
2021年1月11日
Node
简单的文件读写封装
base64
获取post-body
接收base64图片
koa中间件机制
promisify
node解析url参数
获取本机IP(IPV4)
node路由
执行命令
cli头注释
从URL加载commonjs模块
下载tarball并解压到目录
Ant-Design组件
form中使用checkbox
antd中的一些坑的细节(持续更新)
排序表格
重置Modal样式
图片上传
Menu组件样式选择器
Modal中form-reset无效
右键菜单
异步初始化表单项
input样式重置
form表单验证
antd按需加载
学习antd组件设计
Modal遮罩双层滚动问题
table前端分页与后端分页
TableTransfer
数据结构算法
计算字符串hash指纹
base64算法
排序算法
树遍历、删除节点
凯撒加密
KMP算法
Golang基础
golang快速上手
浏览器基础
浏览器内核
页面回流与重绘
从输入URL到页面渲染
页面渲染原理
PWA离线应用
Web3
什么是加密货币质押
Freqtrade量化策略的现状与挑战
2024年使用加密货币赚钱的8种最佳方法
SOL
freqtrade配置文件说明
了解Solana的历史
如何制作NFT
进入主流加密时代
提高合约期货交易员水平的五个关键点
Web3行业技能要求总结
比特币减半将如何影响其未来价格
优化比特币策略网格中的网格增量
如何使用freqtrade通过Python回测策略并交易加密货币
搭建freqtrade加密货币量化交易机器人
ETH
如何抓住加密货币空投机会
什么是永续合约
BTC
BOLL布林线怎么看
什么是加密货币对冲
什么是加密货币套利交易
数据库
mongodb
添加数据库管理员
Nodejs操作mongodb
mongodb增删査改
mysql
在512MB服务上运行mysql8
使用docker安装mysql
常用命令
Kubernetes
运行第一个docker实例
网络基础
github访问超时优化
ipv4
正则表达式
常用正则
combineReplacers
理解正则表达式及常用正则表达式整理
学习技巧
基础语法
性能优化
关于时间计算
api缓存
memorize函数
用于撤销与反撤销的对象池
前端性能优化
打包优化
并发请求队列
ECharts
公共配置项
图表实例初始化和更新逻辑
随便写点儿?
如果是我面试别人
echarts之zrender的clone函数问题
行动踪迹
提效方法论
文件中转站
正则匹配结果伪数组解构报错
双系统使用原则
一些让人抓狂的
查看npm包版本兼容
记录一次bug:js整数溢出
项目规范
关于前端复用性
记录一次bug:nextjs同构环境下的环境变量
vim列编辑
泰拉瑞亚发展路线
moment注意
收藏网址
popmotion库的坑
障
每日总结
React-Hooks
useAsync
useDerivedStateFromProps
useIntersection
useCopy
useInputHistory
useSetParticalState
useRouter
useLoadScript
useFormModal
useProgress
useTimer
useInterval
useI18N
useEcharts
useModal
Github-API
github鉴权
使用github-issue api做评论系统
RestFul-v3
使用github-action发布npm包
使用Action自动化发布Docker镜像
使用Action自动化发布Pages
HTML超文本标记语言
常用meta和link标签
表格
列表
可编辑区域
表单输入
iframe
移动端禁用双指放大
React原理
服务端渲染SSR原理
遍历Fiber链表
batchUpdate
propTypes验证
React函数式编程
ref为什么能保持引用
如何找到alternate
Context造成的rerender
事件冒泡与Portals
React中的错误处理
React性能优化
context_rerender方案代替redux
组件通信
useState使用props初始化的注意点
reconciler实现
hook
useRef
useMemo
useEffect
useState
createContext
updateHostProperties
render
performUnitOfWork
全局变量
beginWork
workLoop
commitWork
createElement
commitAllWork
reconcileChildren
performWork
useEffect的deps规则
react-key与defaultValue
React底层XSS防御
React函数组件对比class组件
keep-live方法
ref转发
生命周期
数据结构类型
关于TSX的类型定义
Fiber数据结构
React-Fiber实现
博客建设日志
网站建设过程
博客前台的更新程序发布!
网站架构和技术栈
PrivacyPolicy
网站重构、优化日志
wordpress
数据库连接问题
练习
来测试一下?
NestJs
类加载关系及异常定位
使用nowsh-serverless部署nestjs
参数字段过滤器
entity设计规范
nestjs断点调试
定时
微信小程序
view、text和block
webview小程序解决方案
webview小程序基本架构设计
webview小程序3种登录方案
返回前刷新上一个页面
loginCode和加密向量
小程序审核注意项
获取url参数
webview调试方法
公众号H5登录
浏览器API
offset、client、scroll区别
移动端获取clientXY
MutationObserver
requestIdleCallback方法
navigator对象
pageX,pageY,offsetX,offsetY,clientX,clientY,x,y,screenX,screenY区别
documentElement
DOM对象继承体系
clientHeight与scrollHeight区别
requestAnimationFrame
前端构建工具
docker
WSL内存占用过高解决
一键清理none镜像
前端项目docker部署
查看后台日志
WSL数据迁移
ubuntu安装docker
k8s基本概念
docker项目更新
CI环境docker镜像拉取次数限制
拷贝镜像文件到本地
docker容器使用宿主http代理
在docker镜像中安装docker
构建指定平台镜像
阿里oss
在nodejs上使用ossApi
nginx
nginx日志
nginx安装和常用命令
使用nginx来升级HTTPS
使用nginx部署nextjs
nginx目录结构
babel
安装
包管理器
npm常用命令
yarn配置文件
terser
terser快捷压缩命令
webpack
webpack缓存原理
webpack之loader和plugin
真机(远程)调试
热更新watchOptions
接入jsdelivr
cra构建工具react-scripts
关闭dev-server的log
plugin
BannerPlugin
Nextjs服务端渲染
封装接口请求函数
token转发
nextjs微服务原理
proxy服务
定义next-config类型
Nextjs数据context传递
利用Link实现Tab的问题与优化
Nextjs自动静态优化存在的问题
Nextjs首屏渲染速度优化
api路由拦截
非api反向代理
ssr项目架构注意与优化
Redux状态管理
redux-thunk
combineReducers
applyMiddleware
bindActionCreators
nextListener的双缓冲技术
compose
redux思想
createStore
VSCode插件开发
实现一个WebIDE实时编译React
使用默认浏览器打开链接
vscode插件编写教程
vscode插件路径相关
Iceworks篇
iceworks-app实现原理简介
iceworks-i18n多语言原理
iceworks-project-creator实现原理简介
Saber2pr's Blog
Linux相关
开放端口
ubuntu维护
设置全局http代理
shell命令
ssh连接服务器
双系统重装后恢复ubuntu引导
tty终端
安装最新nodejs