├── .babelrc
├── .browserslistrc
├── .cache
└── 20844ed58e2e19ee548a9d8d7b612771.json
├── .editorconfig
├── .eslintrc
├── .eslintrc.js
├── .gitignore
├── .npmrc
├── .postcssrc
├── .storybook
├── config.js
└── webpack.config.js
├── .travis.yml
├── .vscode
└── launch.json
├── README.md
├── SUMMARY.md
├── TODO.md
├── _book
├── index.html
└── src
│ └── webpack
│ └── README.md
├── _config.yml
├── index.html
├── journals
└── 2020_11_27.md
├── logseq
├── config.edn
└── custom.css
├── manifest.json
├── nightwatch.conf.js
├── nightwatch.json
├── openssl.cnf
├── package.bak.json
├── package.json
├── pages
└── contents.md
├── pnpm-lock.yaml
├── setup.py
├── src
├── MathML
│ ├── LittleFermat.mml
│ └── README.md
├── algorithm
│ ├── README.md
│ ├── dp
│ │ └── index.js
│ ├── leetcode
│ │ ├── README.md
│ │ ├── bfs-最小高度.js
│ │ ├── bfs-滑动谜题.js
│ │ ├── bfs-转盘锁.js
│ │ ├── dp-01背包问题.js
│ │ ├── dp-乘积最大子数组.js
│ │ ├── dp-凑零钱.js
│ │ ├── dp-分割等和子集.js
│ │ ├── dp-单词拆分.js
│ │ ├── dp-字符串相乘.js
│ │ ├── dp-完全平方数.js
│ │ ├── dp-打家劫舍.js
│ │ ├── dp-数组求最大子序和.js
│ │ ├── dp-斐波那契.js
│ │ ├── dp-最长公共子序列.js
│ │ ├── dp-最长回文子串.js
│ │ ├── dp-最长递增子序列长度.js
│ │ ├── dp-杨辉三角.js
│ │ ├── dp-爬楼梯.js
│ │ ├── dp-目标和.js
│ │ ├── dp-编辑距离.js
│ │ ├── dp-通解.js
│ │ ├── dp-链表相加.js
│ │ ├── dp-零钱兑换.js
│ │ ├── 中序-二叉树遍历.js
│ │ ├── 中序-转累加树.js
│ │ ├── 中序-递增顺序查找二叉树.js
│ │ ├── 二分-在排序数组中查找元素的第一个和最后一个位置.js
│ │ ├── 二分-寻找两个正序数组的中位数.js
│ │ ├── 二分-寻找旋转排序数组中的最小值.js
│ │ ├── 二分-搜索二维矩阵.js
│ │ ├── 二分-搜索插入位置.js
│ │ ├── 二分-搜索旋转排序数组.js
│ │ ├── 二分-求平方根.js
│ │ ├── 二分查找.js
│ │ ├── 二叉树-中序遍历.js
│ │ ├── 二叉树-二叉搜索树第K小的元素.js
│ │ ├── 二叉树-二叉树展开为链表.js
│ │ ├── 二叉树-二叉树的右视图.js
│ │ ├── 二叉树-二叉树直径.js
│ │ ├── 二叉树-从前序和中序遍历构造二叉树.js
│ │ ├── 二叉树-对称二叉树.js
│ │ ├── 二叉树-层序遍历.js
│ │ ├── 二叉树-最大深度.js
│ │ ├── 二叉树-最近公共祖先.js
│ │ ├── 二叉树-有序数组转为二叉搜索树.js
│ │ ├── 二叉树-翻转二叉树.js
│ │ ├── 二叉树-路径总和三.js
│ │ ├── 二叉树-验证二叉搜索树.js
│ │ ├── 前序-二叉树层次遍历.js
│ │ ├── 前序-二叉树搜索结点.js
│ │ ├── 前序-二叉树求层平均值.js
│ │ ├── 前序-二叉树遍历.js
│ │ ├── 前序-反转链表.js
│ │ ├── 前序-合并二叉树.js
│ │ ├── 前序-最大深度n叉树.js
│ │ ├── 前序-最大深度二叉树.js
│ │ ├── 前序-根到叶二进制之和.js
│ │ ├── 前序-相同二叉树.js
│ │ ├── 双向链表-LRU缓存机制.js
│ │ ├── 双指针-三数之和.js
│ │ ├── 双指针-反转字符串.js
│ │ ├── 双指针-数组.js
│ │ ├── 双指针-滑动窗口.js
│ │ ├── 双指针-盛最多水的容器.js
│ │ ├── 双指针-移动零.js
│ │ ├── 后序-二叉树搜索范围.js
│ │ ├── 后序-二叉树最大路径和.js
│ │ ├── 后序-二叉树遍历.js
│ │ ├── 后序-修剪二叉树.js
│ │ ├── 后序-单值二叉树.js
│ │ ├── 后序-对称二叉树.js
│ │ ├── 后序-左子树叶之和.js
│ │ ├── 后序-平衡二叉树.js
│ │ ├── 后序-有序数组转二叉树.js
│ │ ├── 后序-翻转二叉树.js
│ │ ├── 哈希-两数之和.js
│ │ ├── 哈希-和为K的子数组.js
│ │ ├── 哈希-字母异位词分组.js
│ │ ├── 哈希-最长连续序列.js
│ │ ├── 哈希表-两个链表的第一个公共节点.js
│ │ ├── 哈希表-环形链表.js
│ │ ├── 回溯-n数之和.js
│ │ ├── 回溯-全排列.js
│ │ ├── 回溯-分割回文串.js
│ │ ├── 回溯-单词搜索.js
│ │ ├── 回溯-子集.js
│ │ ├── 回溯-字符串所有组合.js
│ │ ├── 回溯-拨电话.js
│ │ ├── 回溯-括号生成.js
│ │ ├── 回溯-排列组合all.js
│ │ ├── 回溯-数组中和为N的K元组.js
│ │ ├── 回溯-洗牌算法.js
│ │ ├── 回溯-组合.js
│ │ ├── 回溯-组合总和.js
│ │ ├── 回溯-钥匙和房间.js
│ │ ├── 巧技-计数质数.js
│ │ ├── 巧技-重复子字符串.js
│ │ ├── 并查集.js
│ │ ├── 异或-找数组中的唯一数.js
│ │ ├── 归并-合并K个有序链表.js
│ │ ├── 微信红包算法.js
│ │ ├── 技巧-只出现一次的数字.js
│ │ ├── 技巧-多数元素.js
│ │ ├── 普通数组-合并区间.js
│ │ ├── 普通数组-最大子数组和.js
│ │ ├── 普通数组-轮转数组.js
│ │ ├── 普通数组-除自身以外数组的乘积.js
│ │ ├── 栈-字符串解码.js
│ │ ├── 栈-最小栈.js
│ │ ├── 栈-最长的括号子串.js
│ │ ├── 栈-有效的括号.js
│ │ ├── 栈-每日温度.js
│ │ ├── 滑动窗口-字符串排列.js
│ │ ├── 滑动窗口-找到字符串中所有字母异位词.js
│ │ ├── 滑动窗口-无重复字符的最长子串.js
│ │ ├── 滑动窗口-最小覆盖子串.js
│ │ ├── 贪心算法-买卖股票最佳时机.js
│ │ ├── 贪心算法-跳跃游戏.js
│ │ ├── 贪心算法-跳跃游戏2.js
│ │ ├── 递归-合并两个有序链表.js
│ │ ├── 链表-LRU缓存.js
│ │ ├── 链表-两两交换链表中的节点.js
│ │ ├── 链表-两数相加.js
│ │ ├── 链表-删除链表的倒数第N个结点.js
│ │ ├── 链表-反转链表.js
│ │ ├── 链表-合并两个有序链表.js
│ │ ├── 链表-回文链表.js
│ │ ├── 链表-排序链表.js
│ │ ├── 链表-环形链表.js
│ │ ├── 链表-环形链表2.js
│ │ ├── 链表-相交链表.js
│ │ └── 链表-随机链表的复制.js
│ ├── math
│ │ ├── GCD.js
│ │ ├── LCM.js
│ │ ├── bit.js
│ │ ├── complex.js
│ │ ├── factorial.js
│ │ ├── fast-power.js
│ │ ├── fibonacci.js
│ │ ├── integerPartition.js
│ │ ├── liuHui.js
│ │ ├── pascal-triangle.js
│ │ ├── primality.js
│ │ ├── radian.js
│ │ └── 素数筛.js
│ ├── set
│ │ ├── cartesianProduct.js
│ │ ├── combination.js
│ │ ├── fisherYates.js
│ │ ├── lcs.js
│ │ ├── permutation.js
│ │ └── powerSet.js
│ ├── sort
│ │ ├── 归并.js
│ │ └── 快排.js
│ ├── structure
│ │ ├── avl-tree.gif
│ │ ├── avl-tree.md
│ │ ├── base.js
│ │ ├── 二叉树.js
│ │ ├── 二叉树节点访问顺序.png
│ │ ├── 二叉索引树.js
│ │ ├── 优先队列.js
│ │ ├── 先序遍历.png
│ │ ├── 双向链表.js
│ │ ├── 哈希表.js
│ │ ├── 图.js
│ │ ├── 堆.js
│ │ ├── 字典树.js
│ │ ├── 栈.js
│ │ ├── 树.md
│ │ ├── 红黑树.md
│ │ ├── 线段树.js
│ │ ├── 链表.js
│ │ └── 队列.js
│ └── x-Queen.js
├── angular
│ ├── JIT&AOT.md
│ ├── README.md
│ └── render.jpg
├── babel
│ ├── README.md
│ ├── acorn.js
│ ├── acorn流程.png
│ ├── babel-plugin-console.js
│ ├── babel-plugin-diy.js
│ ├── babel-plugin-inline-env.js
│ ├── babel-plugin-macro.js
│ ├── babel-register.js
│ ├── babel-run-diy.js
│ ├── babel-run-inline-env.js
│ ├── babel-test.js
│ ├── babel.es6
│ ├── babel流程.png
│ ├── index.html
│ ├── index.js
│ ├── path属性&方法.png
│ ├── sandbox.html
│ └── treeshaking-v1
│ │ ├── base.js
│ │ ├── package.json
│ │ ├── test-lib.js
│ │ ├── test.js
│ │ ├── treeshaking-replace.js
│ │ ├── treeshaking-search.js
│ │ └── utils.js
├── book
│ ├── 1844年经济学手稿.md
│ ├── DIP-1.jpeg
│ ├── DOTA2.md
│ ├── ISP-1.png
│ ├── LSP-1.jpeg
│ ├── OCP-1.jpeg
│ ├── README.md
│ ├── SRP-1.jpeg
│ ├── SRP-2.jpeg
│ ├── SRP-3.jpeg
│ ├── The Grammer of Graphics.md
│ ├── designing delivery.md
│ ├── fact模型.jpeg
│ ├── oltp和olap.jpeg
│ ├── 一生的旅途-迪士尼ceo自述.md
│ ├── 为什么是中国.md
│ ├── 主键分区.jpeg
│ ├── 事实.md
│ ├── 人才盘点.md
│ ├── 人才评估打分.jpeg
│ ├── 人月神话.md
│ ├── 人类简史.md
│ ├── 伟大的中国工业革命.md
│ ├── 免费.md
│ ├── 兰伯特时间戳.jpeg
│ ├── 关键对话.md
│ ├── 分区.jpeg
│ ├── 分析与思考.md
│ ├── 创新者的窘境.md
│ ├── 动物农场.md
│ ├── 四种代码结构.jpeg
│ ├── 天朝的崩溃.md
│ ├── 好用的网站.md
│ ├── 如何阅读一本书.md
│ ├── 学会提问.md
│ ├── 少有人走过的路.md
│ ├── 巴菲特致股东的信.md
│ ├── 影响力.md
│ ├── 我们为什么要睡觉.md
│ ├── 战略与路径.md
│ ├── 插件式架构.jpeg
│ ├── 改变心理学的40项研究.md
│ ├── 散列分区.jpeg
│ ├── 数据复制&分区.jpeg
│ ├── 整洁架构.jpeg
│ ├── 易经.md
│ ├── 更好的系统架构设计.jpeg
│ ├── 有向无环图.jpeg
│ ├── 服务发现.jpeg
│ ├── 枪炮病菌与钢铁.md
│ ├── 架构简洁之道.md
│ ├── 格鲁夫:给职业经理人的第一课.md
│ ├── 梦的解析.md
│ ├── 毛选.md
│ ├── 生命之书.md
│ ├── 用户关注点的变化.jpeg
│ ├── 硅谷钢铁侠.md
│ ├── 社会心理学.md
│ ├── 稳定抽象原则.jpeg
│ ├── 穷查理宝典.md
│ ├── 管理心理学.md
│ ├── 索引示意图.jpeg
│ ├── 红星照耀中国.md
│ ├── 组件聚合.jpeg
│ ├── 置身事内.md
│ ├── 自控力.md
│ ├── 菜根谭.md
│ ├── 认知觉醒.md
│ ├── 设计数据密集型应用.md
│ ├── 资本论.md
│ ├── 资治通鉴.md
│ ├── 邓小平时代.md
│ ├── 长尾理论.md
│ ├── 陈志武金融通识课.md
│ ├── 马斯克传.md
│ └── 驾驭周期.md
├── canvas
│ └── README.md
├── career
│ ├── 5G辐射.md
│ ├── APM.md
│ ├── OLTP和OLAP.png
│ ├── README.md
│ ├── Settings.json
│ ├── ab实验.md
│ ├── apm-overall.jpg
│ ├── apm-sort.jpg
│ ├── csr&ssr.jpeg
│ ├── devOps.md
│ ├── druid-data-groupby.png
│ ├── i18n.md
│ ├── json-web-token.png
│ ├── k8s.md
│ ├── keybindings.json
│ ├── kylin-data-cube.png
│ ├── linux性能命令.jpg
│ ├── mac快捷键.md
│ ├── mac相关.md
│ ├── sso.md
│ ├── toC&toB.md
│ ├── 三层四面.jpg
│ ├── 产品相关.jpeg
│ ├── 产品设计.md
│ ├── 企业价值倍数.jpeg
│ ├── 低代码平台.md
│ ├── 债券周期.png
│ ├── 光波&电波.jpg
│ ├── 全栈.md
│ ├── 写业务代码的方法论.jpg
│ ├── 冰山模型.jfif
│ ├── 列存储.jpg
│ ├── 前端代码质量.md
│ ├── 前端埋点和监控方案.md
│ ├── 前端基础架构.md
│ ├── 前端工程化.md
│ ├── 前端新人指引.md
│ ├── 前端架构&技术方案.md
│ ├── 前端渲染历史.md
│ ├── 前端渲染历史.png
│ ├── 前端自动化测试.md
│ ├── 功率密度标准.jpg
│ ├── 发布订阅.png
│ ├── 发布订阅vs观察者.jpg
│ ├── 可转债规则.jpeg
│ ├── 商业模式画布.jfif
│ ├── 国情对应美林时钟.jpeg
│ ├── 基站功率.jpg
│ ├── 基金.md
│ ├── 市净率.jpeg
│ ├── 市现率.jpeg
│ ├── 市盈率.png
│ ├── 市销率.png
│ ├── 常用指标.jpeg
│ ├── 开发视角前端架构.png
│ ├── 开源计划模板.md
│ ├── 异地多活.jpeg
│ ├── 微信背后的产品观.pdf.zip
│ ├── 微内核.md
│ ├── 技术全局视角.jpeg
│ ├── 技术思考-技术价值.png
│ ├── 技术思考-研发效能度量体系.png
│ ├── 技术文章指南.md
│ ├── 技术管理.md
│ ├── 投资趋势.jpeg
│ ├── 持续集成.jpg
│ ├── 数据处理.jpg
│ ├── 数据库对比.md
│ ├── 数据架构示意图.jpg
│ ├── 方法论建设.md
│ ├── 显示fps.gif
│ ├── 流程-看板.jpeg
│ ├── 浏览器兼容规范.jpg
│ ├── 深度学习.md
│ ├── 生产变更.png
│ ├── 电磁辐射.jpg
│ ├── 端智能.md
│ ├── 简易sso.png
│ ├── 精进表达模型.jpeg
│ ├── 美林投资时钟.jpeg
│ ├── 职业发展方向.jpeg
│ ├── 股权风险溢价.png
│ ├── 股权风险溢价走势-2024.png
│ ├── 行存储.jpg
│ ├── 观察者.png
│ ├── 设计文档.md
│ ├── 设计模式.md
│ ├── 资产的不相关性.png
│ ├── 通用前端架构.png
│ ├── 逻辑递进.jpg
│ ├── 采集端控制.jpg
│ ├── 金融周期.png
│ ├── 随记.md
│ ├── 集群sso.png
│ ├── 页面健康度.png
│ ├── 页面评分细则.jpeg
│ ├── 领导力.md
│ ├── 高并发.md
│ └── 高效沟通.md
├── chatgpt
│ └── README.md
├── chrome
│ ├── README.md
│ ├── mock
│ │ ├── README.md
│ │ ├── index.html
│ │ ├── package.json
│ │ ├── prettier.config.js
│ │ ├── public
│ │ │ ├── content.html
│ │ │ ├── devtools.html
│ │ │ ├── js
│ │ │ │ ├── background.js
│ │ │ │ ├── content.js
│ │ │ │ ├── devtools.js
│ │ │ │ ├── options.js
│ │ │ │ ├── panel.js
│ │ │ │ └── script.ts
│ │ │ ├── manifest.json
│ │ │ ├── options.html
│ │ │ └── vite.svg
│ │ ├── src
│ │ │ ├── assets
│ │ │ │ └── vue.svg
│ │ │ ├── const
│ │ │ │ ├── index.ts
│ │ │ │ └── selection.ts
│ │ │ ├── main.ts
│ │ │ ├── router.ts
│ │ │ ├── style.less
│ │ │ ├── types
│ │ │ │ └── mock.d.ts
│ │ │ ├── utils
│ │ │ │ ├── env.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── message.ts
│ │ │ │ └── storage.ts
│ │ │ └── vite-env.d.ts
│ │ ├── tsconfig.json
│ │ ├── tsconfig.node.json
│ │ └── vite.config.ts
│ └── 插件开发.md
├── css-related
│ ├── README.md
│ ├── UFE00.pdf
│ ├── base64-正常匹配.jpg
│ ├── base64-补位.jpg
│ ├── base64.md
│ ├── css_track
│ │ └── README.md
│ ├── emoji.md
│ ├── flyball
│ │ ├── flyball.html
│ │ ├── flyball.js
│ │ ├── flyball.less
│ │ └── flyball2.html
│ ├── img&视频.md
│ ├── index.html
│ ├── styled-component.md
│ ├── svg转css.html
│ ├── 两栏布局-阴影.html
│ ├── 好看的404.html
│ └── 层叠顺序.png
├── cyclejs
│ ├── index.html
│ ├── main.ts
│ ├── package.json
│ ├── tsconfig.json
│ ├── tslint.json
│ └── webpack.config.js
├── dataforge
│ ├── dataforge.js
│ └── test.json
├── ddd
│ ├── README.md
│ ├── ddd模型+依赖倒置.jpg
│ ├── ddd项目中运用.jpg
│ └── refactoring-3.png
├── deeplearning
│ ├── README.md
│ └── deeplearning.pdf
├── deno
│ ├── README.md
│ └── puppeteer.js
├── docker
│ ├── README.md
│ ├── alert调研.md
│ ├── overall.png
│ ├── prometheus.md
│ └── webhook.js
├── echart
│ ├── README.md
│ └── china.js
├── electron
│ ├── README.md
│ ├── nw结构.jpeg
│ └── vscode通讯机制.png
├── esbuild
│ ├── README.md
│ ├── test.js
│ └── 前端工程化.jpeg
├── eslint
│ └── README.md
├── fe-interview
│ ├── README-old.md
│ ├── README.md
│ ├── ai
│ │ ├── 面试人.md
│ │ └── 面试官.md
│ └── src
│ │ ├── async&await.js
│ │ ├── bind.js
│ │ ├── call&apply&bind.js
│ │ ├── common.md
│ │ ├── curry.js
│ │ ├── debounce.js
│ │ ├── deepClone.js
│ │ ├── eventBus.js
│ │ ├── extend.js
│ │ ├── html头部.jpg
│ │ ├── indexedDB读写.js
│ │ ├── instanceOf.js
│ │ ├── json-parse.js
│ │ ├── json-stringify.js
│ │ ├── mvp.PNG
│ │ ├── new.js
│ │ ├── promise.js
│ │ ├── promise.md
│ │ ├── throttle.js
│ │ ├── urlSearchParams.js
│ │ ├── zookeeper.js
│ │ ├── 作用域链.jpg
│ │ ├── 合成触发.jpg
│ │ ├── 回流触发.jpg
│ │ ├── 字符串全匹配.js
│ │ ├── 广度优先.png
│ │ ├── 扁平数据转树状结构.js
│ │ ├── 扁平数据转树状结构2.js
│ │ ├── 技巧.md
│ │ ├── 排序算法复杂度.png
│ │ ├── 文件上传.md
│ │ ├── 文件下载.md
│ │ ├── 文件读写.md
│ │ ├── 模拟节流请求.js
│ │ ├── 深度优先.png
│ │ ├── 深拷贝.md
│ │ ├── 观察者和发布订阅模式.png
│ │ ├── 资源优先级.png
│ │ ├── 重绘触发.jpg
│ │ ├── 金额format.js
│ │ ├── 页面请求流程.png
│ │ └── 飞书.md
├── flutter
│ ├── README.md
│ ├── gpu-render.png
│ └── state.jpg
├── fp
│ ├── README.md
│ ├── codewar-fp.js
│ ├── fp.js
│ ├── lib.js
│ ├── mostly-adequate-guide.pdf
│ └── test.js
├── g2
│ └── README.md
├── game
│ ├── .babelrc
│ ├── README.md
│ ├── app
│ │ ├── App.less
│ │ └── App.tsx
│ ├── components
│ │ ├── combat
│ │ │ ├── Combat.less
│ │ │ ├── Combat.tsx
│ │ │ ├── CombatDistance.tsx
│ │ │ ├── CombatOperation.tsx
│ │ │ ├── CombatOperationArea.tsx
│ │ │ └── CombatScene.tsx
│ │ ├── common
│ │ │ ├── AbstractComponent
│ │ │ │ └── index.tsx
│ │ │ ├── BaseComponent
│ │ │ │ └── index.tsx
│ │ │ ├── Choice
│ │ │ │ ├── index.less
│ │ │ │ └── index.tsx
│ │ │ ├── Man
│ │ │ │ ├── index.less
│ │ │ │ └── index.tsx
│ │ │ └── errorBoundary
│ │ │ │ └── index.tsx
│ │ ├── header
│ │ │ ├── Header.less
│ │ │ └── Header.tsx
│ │ ├── map
│ │ │ ├── Map.less
│ │ │ └── Map.tsx
│ │ └── starter
│ │ │ ├── BirthMap.tsx
│ │ │ ├── PersonInfo.tsx
│ │ │ ├── Starter.less
│ │ │ ├── Starter.tsx
│ │ │ ├── StepButton.tsx
│ │ │ └── System.tsx
│ ├── enum
│ │ ├── common.ts
│ │ ├── index.ts
│ │ └── starter.ts
│ ├── img
│ │ ├── blade-man-blue-sec.jpg
│ │ ├── blade-man-blue.jpg
│ │ ├── blade-man-static.gif
│ │ ├── blade-man.jpg
│ │ ├── run-man.gif
│ │ ├── run-man.jpg
│ │ └── shuzhi.jpeg
│ ├── logo.svg
│ ├── models
│ │ ├── app.ts
│ │ ├── combat.ts
│ │ ├── index.ts
│ │ └── starter.ts
│ ├── next.config.js
│ ├── package.json
│ ├── pages
│ │ ├── index.less
│ │ └── index.tsx
│ ├── postcss.config.js
│ ├── public
│ │ ├── index.html
│ │ └── main.css
│ ├── selectors
│ │ ├── app.ts
│ │ ├── combat.ts
│ │ ├── header.ts
│ │ └── starter.ts
│ ├── server.js
│ ├── store
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── types
│ │ ├── app.ts
│ │ ├── combat.ts
│ │ ├── common.ts
│ │ ├── index.ts
│ │ ├── starter.ts
│ │ └── test.ts
│ ├── utils
│ │ ├── Character.ts
│ │ ├── constant.ts
│ │ └── index.ts
│ └── web
│ │ ├── controller
│ │ └── index.js
│ │ ├── index.js
│ │ └── service
│ │ └── index.js
├── gitflow
│ ├── README.md
│ ├── git-flow.png
│ └── git-log.png
├── graphQL
│ ├── README.md
│ └── index.js
├── html
│ ├── README.md
│ ├── html.js
│ ├── test.css
│ ├── test1.css
│ ├── test1.html
│ ├── test2.css
│ ├── test2.html
│ ├── wxml-resolver.js
│ └── 移动端开发经验.md
├── http
│ ├── 10.png
│ ├── 201208201734403507.png
│ ├── 24.png
│ ├── CDN.md
│ ├── OSI层次.jpg
│ ├── README.md
│ ├── TCP-IP协议层次.jpg
│ ├── TCP-IP协议模型.png
│ ├── api.md
│ ├── backlog.png
│ ├── eventSource.md
│ ├── hash算法.js
│ ├── http2对比.png
│ ├── http3对比.png
│ ├── https-2.jpg
│ ├── https请求完整流程.jpg
│ ├── http五大类知识.png
│ ├── rtt对比.png
│ ├── ssl-tls.jpg
│ ├── stale-while-revalidate.jpg
│ ├── tcp传输过程.jpg
│ ├── tcp和http关系.jpg
│ ├── tcp请求报文.png
│ ├── tcp首部信息.png
│ ├── udp首部信息.png
│ ├── webRTC.md
│ ├── websocket.md
│ ├── websocket.png
│ ├── 二进制分帧.png
│ ├── 低延迟直播技术.png
│ ├── 加密算法.md
│ ├── 协议层次.png
│ ├── 多路复用.png
│ ├── 当前主流直播技术延迟.png
│ ├── 跨域.jpeg
│ └── 跨域.md
├── immer
│ ├── README.md
│ ├── immer.js
│ ├── immer.png
│ ├── proxy.md
│ ├── test.html
│ └── test.js
├── js&browser
│ ├── 2010-facebook-性能优化.pdf
│ ├── 201208201734418392.png
│ ├── 2018性能优化.png
│ ├── 2954145-5bb92d1fbdb9df41.png
│ ├── 41808298-e8cce80c-770d-11e8-994b-1d6f30e2bfe3.png
│ ├── 41808308-0446ba5e-770e-11e8-895a-e2ed7231869d.png
│ ├── 41808322-2d1566ec-770e-11e8-98f7-ca87edeaa998.png
│ ├── CSSOM.png
│ ├── DNS查找过程.png
│ ├── DNS迭代查找.png
│ ├── DNS递归查找.png
│ ├── Mark-Compact.png
│ ├── Mark-Sweep.png
│ ├── Object.keys.md
│ ├── README.md
│ ├── Shapes&InlineCaches.md
│ ├── await.jpg
│ ├── cachcontrol.jpg
│ ├── chrome扩展开发.md
│ ├── chrome浏览器架构.jpg
│ ├── chrome渲染线程.png
│ ├── chromium渲染过程.jpeg
│ ├── css-modules.md
│ ├── deepCopy.md
│ ├── defer-async.jpeg
│ ├── dns-树形结构.jpg
│ ├── esModule.md
│ ├── esm.md
│ ├── event-table.png
│ ├── eventLoop简易示图.png
│ ├── event_loop.jpeg
│ ├── gecko渲染过程.jpg
│ ├── gib68xrvj59.jpeg
│ ├── huffman编码.png
│ ├── iframe.md
│ ├── jsbridge.md
│ ├── k和p.jpg
│ ├── libuv.png
│ ├── life-requestIdle.png
│ ├── my.js
│ ├── node环境-事件循环.png
│ ├── performance.jpeg
│ ├── posthtml.js
│ ├── render-tree.jpg
│ ├── requestIdleCallback.md
│ ├── requestIdleCallback.png
│ ├── samesite.jpg
│ ├── setTimeout回调触发前.png
│ ├── setTimeout回调触发后.png
│ ├── spa架构.png
│ ├── task_eventloop_v8.jpg
│ ├── test.html
│ ├── webcontainer.md
│ ├── webkit渲染过程.jpeg
│ ├── 事件触发.gif
│ ├── 二进制和图片间的转换关系.png
│ ├── 代码大全.md
│ ├── 代码重构.md
│ ├── 任务队列.png
│ ├── 内存管理.md
│ ├── 前端-各种渲染方式对比.jpg
│ ├── 前端体系.jpeg
│ ├── 前端软件架构.md
│ ├── 前端进程.jpeg
│ ├── 前端项目规范.md
│ ├── 单次请求次序.jpeg
│ ├── 各种技术案例.md
│ ├── 响应报文.jpg
│ ├── 图片优化.jpeg
│ ├── 图片优化.md
│ ├── 图片格式区别.jpeg
│ ├── 图片格式选择.jpeg
│ ├── 图片模糊.jpg
│ ├── 基本常识.md
│ ├── 安卓屏幕尺寸.png
│ ├── 小程序vsPWA.jpg
│ ├── 并发模型-event_loop.md
│ ├── 应用层封装.jpg
│ ├── 开发者模式骚操作.md
│ ├── 性能优化.jpeg
│ ├── 性能优化2.png
│ ├── 性能优化2019.md
│ ├── 性能优化2020.md
│ ├── 性能优化2024.md
│ ├── 搜索引擎.md
│ ├── 数值存储.md
│ ├── 断点调试.png
│ ├── 新生代垃圾回收.png
│ ├── 有趣的github.md
│ ├── 根域服务器.jpg
│ ├── 根据token生成css树的过程.jpg
│ ├── 根据token生成节点树的过程.jpg
│ ├── 浏览器API.md
│ ├── 浏览器和node的eventLoop.png
│ ├── 浏览器架构.jpg
│ ├── 浏览器缓存与机制.jpeg
│ ├── 现代浏览器.md
│ ├── 移动端dns解析.png
│ ├── 移动端适配.md
│ ├── 继承.png
│ ├── 缓存字段.jpg
│ ├── 网络安全.md
│ ├── 视频大小.png
│ ├── 视频编码.md
│ ├── 计时器原理.png
│ ├── 请求报文.jpg
│ ├── 请求缓存304判断顺序.jpeg
│ ├── 资源优先级.png
│ ├── 重绘和重排.jpg
│ ├── 页面停留时长统计.md
│ ├── 页面可视状态.jpg
│ ├── 页面渲染.jpg
│ ├── 页面过程与浏览器缓存.md
│ └── 鸿蒙.md
├── jsonlike
│ └── README.md
├── keep
│ ├── README.md
│ ├── 上斜俯卧撑.gif
│ ├── 上斜杠铃卧推.gif
│ ├── 仰卧哑铃交替弯举.gif
│ ├── 仰卧曲臂上拉.jpeg
│ ├── 俯身双臂划船.jpg
│ ├── 俯身哑铃划船.jpeg
│ ├── 俯身哑铃臂屈伸.jpeg
│ ├── 俯身杠铃划船.jpeg
│ ├── 健身指南.md
│ ├── 单臂哑铃划船.jpeg
│ ├── 反握卧推.jpeg
│ ├── 哑铃上斜卧推.jpg
│ ├── 哑铃侧平举.gif
│ ├── 哑铃俯身飞鸟.gif
│ ├── 哑铃前平举.gif
│ ├── 哑铃平板卧推.jpg
│ ├── 哑铃硬拉.jpg
│ ├── 哑铃箭步蹲.gif
│ ├── 哑铃集中弯举.gif
│ ├── 坐姿哑铃推举.gif
│ ├── 坐姿杠铃颈前推举.gif
│ ├── 坐姿颈后哑铃臂屈伸.jpeg
│ ├── 居家必备.md
│ ├── 平板哑铃飞鸟.gif
│ ├── 斜板额前弯举.jpeg
│ ├── 杠铃硬拉.jpg
│ ├── 杠铃箭步蹲.gif
│ ├── 板凳撑.jpeg
│ ├── 牧师凳哑铃弯举.jpeg
│ ├── 站姿锤式哑铃弯举.jpeg
│ ├── 站姿颈后哑铃臂屈伸.jpeg
│ ├── 胸肌臂屈伸.jpg
│ └── 躺姿额头哑铃臂屈伸.jpeg
├── koa
│ ├── .eslintignore
│ ├── .eslintrc.js
│ ├── .gitignore
│ ├── README.md
│ ├── app.js
│ ├── config
│ │ ├── constant.d.ts
│ │ ├── constant.js
│ │ └── constant.ts
│ ├── controller
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── index.ts
│ │ ├── user.d.ts
│ │ ├── user.js
│ │ └── user.ts
│ ├── example
│ │ └── koa-ssr
│ │ │ ├── .eslintrc
│ │ │ ├── .gitignore
│ │ │ ├── index.js
│ │ │ ├── package.json
│ │ │ ├── src
│ │ │ ├── api.d.ts
│ │ │ ├── api.js
│ │ │ ├── api.ts
│ │ │ ├── client.d.ts
│ │ │ ├── client.js
│ │ │ ├── client.tsx
│ │ │ ├── components
│ │ │ │ ├── About.d.ts
│ │ │ │ ├── About.js
│ │ │ │ ├── About.tsx
│ │ │ │ ├── Contact.d.ts
│ │ │ │ ├── Contact.js
│ │ │ │ ├── Contact.tsx
│ │ │ │ ├── Header.d.ts
│ │ │ │ ├── Header.js
│ │ │ │ ├── Header.tsx
│ │ │ │ ├── Home.d.ts
│ │ │ │ ├── Home.js
│ │ │ │ ├── Home.tsx
│ │ │ │ ├── Layout.d.ts
│ │ │ │ ├── Layout.js
│ │ │ │ ├── Layout.tsx
│ │ │ │ ├── Secret.d.ts
│ │ │ │ ├── Secret.js
│ │ │ │ └── Secret.tsx
│ │ │ ├── render-dom.d.ts
│ │ │ ├── render-dom.js
│ │ │ ├── render-dom.tsx
│ │ │ ├── routes.d.ts
│ │ │ ├── routes.js
│ │ │ ├── routes.ts
│ │ │ ├── server.d.ts
│ │ │ ├── server.js
│ │ │ ├── server.ts
│ │ │ ├── store.d.ts
│ │ │ ├── store.js
│ │ │ ├── store.ts
│ │ │ ├── types
│ │ │ │ ├── common.d.ts
│ │ │ │ ├── common.js
│ │ │ │ ├── common.ts
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.js
│ │ │ │ ├── index.ts
│ │ │ │ └── koa-webpack-dev-middleware.d.ts
│ │ │ ├── utils.d.ts
│ │ │ ├── utils.js
│ │ │ └── utils.ts
│ │ │ ├── tsconfig.json
│ │ │ ├── tslint.json
│ │ │ ├── webpack.config.ts
│ │ │ └── yarn.lock
│ ├── interface
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── index.ts
│ ├── public
│ │ ├── demo.html
│ │ ├── images
│ │ │ └── bk3.png
│ │ ├── scripts
│ │ │ └── index.js
│ │ └── styles
│ │ │ └── index.css
│ ├── router.d.ts
│ ├── router.js
│ ├── router.ts
│ ├── server.d.ts
│ ├── server.js
│ ├── server.ts
│ ├── service
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── index.ts
│ │ ├── user.d.ts
│ │ ├── user.js
│ │ └── user.ts
│ ├── tsconfig.json
│ ├── tslint.json
│ └── utils
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── index.ts
│ │ ├── response.d.ts
│ │ ├── response.js
│ │ └── response.ts
├── leancloud
│ └── test.js
├── less
│ └── README.md
├── lighthouse
│ ├── README.md
│ ├── config引用关系.png
│ ├── example.png
│ ├── index.js
│ ├── lang-data
│ │ └── README.md
│ ├── lighthouse架构.jpeg
│ ├── lighthouse结合puppeteer.ts
│ ├── lighthouse结合小程序.md
│ ├── plugins
│ │ ├── README.md
│ │ ├── lighthouse-plugin-arnold-diy
│ │ │ ├── .babelrc
│ │ │ ├── .eslintignore
│ │ │ ├── .eslintrc.js
│ │ │ ├── .gitignore
│ │ │ ├── .npmignore
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── package.json
│ │ │ ├── plugin.js
│ │ │ └── src
│ │ │ │ └── audits
│ │ │ │ └── has-cat-images.js
│ │ └── lighthouse-plugin-demo
│ │ │ ├── package.json
│ │ │ ├── plugin.js
│ │ │ └── src
│ │ │ └── audits
│ │ │ └── demo-audit.js
│ └── 图像识别.md
├── linux-server
│ ├── install-google-chrome.sh
│ ├── nginx.conf
│ ├── shell.md
│ ├── 常用命令.md
│ ├── 快捷装机.md
│ └── 服务器搭建.md
├── lowcode
│ └── README.md
├── lynt
│ └── lynt.js
├── markdown
│ ├── README.md
│ ├── index.html
│ ├── index.js
│ ├── mark.js
│ ├── mark.txt
│ ├── markdown.png
│ ├── test.html
│ ├── test.js
│ └── test.txt
├── meta-programming
│ ├── README.md
│ └── index.js
├── microservice
│ ├── 微前端.md
│ └── 微前端.png
├── miniprogram
│ ├── README.md
│ ├── WAService.js
│ ├── ast.js
│ ├── bin.js
│ ├── build.js
│ ├── electron.asar
│ ├── event-target.js
│ ├── find-data.js
│ ├── image
│ │ └── index.js
│ ├── js
│ │ └── index.js
│ ├── json
│ │ └── index.js
│ ├── package.json
│ ├── pension
│ │ ├── README.md
│ │ ├── cloudfunctions
│ │ │ ├── service
│ │ │ │ ├── dao.js
│ │ │ │ ├── index.js
│ │ │ │ ├── package.json
│ │ │ │ └── utils.js
│ │ │ └── user
│ │ │ │ ├── index.js
│ │ │ │ └── package.json
│ │ ├── miniprogram
│ │ │ ├── app.js
│ │ │ ├── app.json
│ │ │ ├── app.wxss
│ │ │ ├── images
│ │ │ │ ├── oldman.jpg
│ │ │ │ └── qrcode.png
│ │ │ ├── pages
│ │ │ │ ├── index
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── index.json
│ │ │ │ │ ├── index.wxml
│ │ │ │ │ └── index.wxss
│ │ │ │ ├── question
│ │ │ │ │ ├── question.js
│ │ │ │ │ ├── question.json
│ │ │ │ │ ├── question.wxml
│ │ │ │ │ └── question.wxss
│ │ │ │ ├── result
│ │ │ │ │ ├── result.js
│ │ │ │ │ ├── result.json
│ │ │ │ │ ├── result.wxml
│ │ │ │ │ └── result.wxss
│ │ │ │ └── web-view
│ │ │ │ │ ├── web-view.js
│ │ │ │ │ ├── web-view.json
│ │ │ │ │ ├── web-view.wxml
│ │ │ │ │ └── web-view.wxss
│ │ │ └── utils.js
│ │ └── project.config.json
│ ├── preParser
│ │ ├── README.md
│ │ ├── const.js
│ │ ├── index.js
│ │ ├── parser
│ │ │ ├── alipay.js
│ │ │ └── wx.js
│ │ ├── reg.js
│ │ └── utils
│ │ │ ├── index.js
│ │ │ └── proxy.js
│ ├── removeimage
│ │ └── index.js
│ ├── utils.js
│ ├── weapp-socket.js
│ ├── webpack.base.js
│ ├── webpack.config.js
│ ├── websocket.md
│ ├── wxAPI.d.ts
│ ├── wxml
│ │ └── index.js
│ ├── wxss-loader.js
│ ├── wxss
│ │ └── index.js
│ ├── 原webview.png
│ ├── 双线程.png
│ ├── 各端小程序对比.jpeg
│ └── 支付宝小程序架构.png
├── mobx
│ ├── .eslintrc
│ ├── README.md
│ ├── Redux与MobX.md
│ ├── app.js
│ ├── build
│ │ ├── common-manifest.json
│ │ ├── dll.common.js
│ │ ├── webpack.base.js
│ │ ├── webpack.dev.js
│ │ ├── webpack.dll.config.js
│ │ └── webpack.prod.js
│ ├── index.html
│ ├── mobx.js
│ ├── react16 diff.pdf
│ ├── react16-diff.png
│ ├── react16-init.pdf
│ ├── react16-init.png
│ ├── react16-rerender.pdf
│ ├── react16-rerender.png
│ ├── src
│ │ ├── App.jsx
│ │ ├── actions
│ │ │ ├── listpage.js
│ │ │ └── main.js
│ │ ├── app
│ │ │ └── main.jsx
│ │ ├── bind.js
│ │ ├── pages
│ │ │ └── listPage
│ │ │ │ ├── ListBox.jsx
│ │ │ │ ├── index.jsx
│ │ │ │ └── log.js
│ │ ├── selectors
│ │ │ ├── listPage.js
│ │ │ └── main.js
│ │ └── stores
│ │ │ ├── index.js
│ │ │ ├── listPage.js
│ │ │ └── main.js
│ └── test.js
├── mongodb
│ └── README.md
├── music
│ └── README.md
├── mysql
│ └── README.md
├── nasa
│ ├── README.md
│ └── index.html
├── nativescript
│ └── README.md
├── next
│ ├── .babelrc
│ ├── README.md
│ ├── app
│ │ ├── App.less
│ │ └── App.tsx
│ ├── components
│ │ └── header
│ │ │ ├── Header.less
│ │ │ └── Header.tsx
│ ├── logo.svg
│ ├── models
│ │ ├── header.ts
│ │ └── index.ts
│ ├── next.config.js
│ ├── package.json
│ ├── pages
│ │ ├── index.less
│ │ └── index.tsx
│ ├── public
│ │ └── index.html
│ ├── selectors
│ │ ├── app.ts
│ │ └── header.ts
│ ├── store
│ │ └── index.ts
│ ├── tsconfig.json
│ └── types
│ │ └── index.ts
├── node
│ ├── README.md
│ ├── cheerio
│ │ ├── app.js
│ │ ├── components
│ │ │ ├── Cat-column.jsx
│ │ │ ├── Line-chart.jsx
│ │ │ └── Separator.jsx
│ │ ├── config
│ │ │ ├── cat.json
│ │ │ └── trend.json
│ │ ├── constants.js
│ │ ├── monitor.jsx
│ │ ├── package.json
│ │ ├── pages
│ │ │ ├── Cat.jsx
│ │ │ └── Trend.jsx
│ │ ├── test
│ │ │ └── index.js
│ │ └── utils
│ │ │ └── index.js
│ ├── codemirror.md
│ ├── error-locate
│ │ ├── js-locate.js
│ │ └── vue-locate.js
│ ├── koa-ts
│ │ ├── .eslintignore
│ │ ├── .eslintrc.js
│ │ ├── .gitignore
│ │ ├── Makefile
│ │ ├── check.sh
│ │ ├── env.js
│ │ ├── init.script
│ │ ├── jest.config.js
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── controller
│ │ │ │ ├── APIController.ts
│ │ │ │ ├── AbstractController.ts
│ │ │ │ ├── AnalysisController.ts
│ │ │ │ ├── ApiCallController.ts
│ │ │ │ ├── AppController.ts
│ │ │ │ ├── AppManagementController.ts
│ │ │ │ ├── AppReleaseEventController.ts
│ │ │ │ ├── ErrorController.ts
│ │ │ │ ├── ErrorDataController.ts
│ │ │ │ ├── ErrorDiagnoseController.ts
│ │ │ │ ├── ErrorFixController.ts
│ │ │ │ ├── ErrorNewController.ts
│ │ │ │ ├── HealthScoreController.ts
│ │ │ │ ├── HttpRequestController.ts
│ │ │ │ ├── JobController.ts
│ │ │ │ ├── JsErrorController.ts
│ │ │ │ ├── LighthouseController.ts
│ │ │ │ └── MinicodeBuildController.ts
│ │ │ ├── domain
│ │ │ │ ├── README.md
│ │ │ │ ├── aggregate
│ │ │ │ │ ├── AbstractTable.ts
│ │ │ │ │ ├── AbstractTableV2.ts
│ │ │ │ │ ├── MBaseInfo1m.ts
│ │ │ │ │ ├── MH5error1m.ts
│ │ │ │ │ ├── MH5nativex1m.ts
│ │ │ │ │ ├── MH5networkx1m.ts
│ │ │ │ │ ├── MH5pageloadx1m.ts
│ │ │ │ │ ├── MJsErrorBaseInfo1m.ts
│ │ │ │ │ ├── MPageBaseInfo1m.ts
│ │ │ │ │ ├── MReqTimeCountUserCountPagePathIsHttpOKReqUrlReqAction1m.ts
│ │ │ │ │ ├── MSdkinit1m.ts
│ │ │ │ │ ├── MTotalIsHttpOKIsBizOKReqUrlReqUrlHash1m.ts
│ │ │ │ │ └── TLighthouseDetails.ts
│ │ │ │ └── service
│ │ │ │ │ ├── AbstractService.ts
│ │ │ │ │ ├── AbstractServiceV2.ts
│ │ │ │ │ ├── MApiCallBaseInfo1mService.ts
│ │ │ │ │ ├── MH5error1mService.ts
│ │ │ │ │ ├── MH5nativex1mService.ts
│ │ │ │ │ ├── MH5networkx1mService.ts
│ │ │ │ │ ├── MH5pageloadx1mService.ts
│ │ │ │ │ ├── MHttpRequestBaseInfo1mService.ts
│ │ │ │ │ ├── MJsErrorBaseInfo1mService.ts
│ │ │ │ │ ├── MPageBaseInfo1mService.ts
│ │ │ │ │ ├── MReqTimeCountUserCountPagePathIsHttpOKReqUrlReqAction1mService.ts
│ │ │ │ │ ├── MSdkinit1mService.ts
│ │ │ │ │ └── MTotalIsHttpOKIsBizOKReqUrlReqUrlHash1mService.ts
│ │ │ ├── main.ts
│ │ │ ├── router.ts
│ │ │ ├── service
│ │ │ │ ├── AbstractService.ts
│ │ │ │ ├── AppManagementService.ts
│ │ │ │ ├── CustomService.ts
│ │ │ │ ├── PerfDetailService.ts
│ │ │ │ └── SOAService.ts
│ │ │ ├── sql.ts
│ │ │ ├── typeorm
│ │ │ │ └── entity
│ │ │ │ │ ├── AppManagement.ts
│ │ │ │ │ ├── ChangeEvent.ts
│ │ │ │ │ ├── DailyReport.ts
│ │ │ │ │ ├── DiffRecord.ts
│ │ │ │ │ ├── LighthouseDetail.ts
│ │ │ │ │ ├── LighthouseTask.ts
│ │ │ │ │ ├── MinicodeBuild.ts
│ │ │ │ │ └── PerfDetail.ts
│ │ │ ├── types
│ │ │ │ ├── async
│ │ │ │ │ └── queue.d.ts
│ │ │ │ ├── clickhouse.d.ts
│ │ │ │ └── global.d.ts
│ │ │ └── utils
│ │ │ │ ├── SmartSql
│ │ │ │ ├── AbstractSql.ts
│ │ │ │ ├── AnySql.ts
│ │ │ │ ├── const.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── types.d.ts
│ │ │ │ ├── clickhouse.spec.ts
│ │ │ │ ├── clickhouse.ts
│ │ │ │ ├── fs-promise.ts
│ │ │ │ ├── pg.ts
│ │ │ │ └── sourcemap
│ │ │ │ ├── compiler.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── types.d.ts
│ │ │ │ └── utils.ts
│ │ └── tsconfig.json
│ ├── lighthouse
│ │ ├── README.md
│ │ ├── abstractBase.ts
│ │ ├── config.ts
│ │ ├── index.ts
│ │ ├── test.ts
│ │ └── types.d.ts
│ ├── llhttp.md
│ ├── mailer
│ │ ├── README.md
│ │ ├── index.ts
│ │ ├── template
│ │ │ └── card-stripe-table.ts
│ │ ├── test.ts
│ │ └── types.d.ts
│ ├── mynode
│ │ ├── app.js
│ │ └── test.js
│ ├── nestjs
│ │ ├── README.md
│ │ ├── nest-cli.json
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── app.module.ts
│ │ │ ├── const
│ │ │ │ ├── config.ts
│ │ │ │ └── index.ts
│ │ │ ├── controllers
│ │ │ │ ├── project.controller.ts
│ │ │ │ └── script.controller.ts
│ │ │ ├── main.ts
│ │ │ ├── models
│ │ │ │ ├── project.ts
│ │ │ │ └── script.ts
│ │ │ ├── services
│ │ │ │ ├── project.service.ts
│ │ │ │ └── script.service.ts
│ │ │ ├── types
│ │ │ │ └── index.d.ts
│ │ │ └── utils
│ │ │ │ └── cypress.js
│ │ ├── tsconfig.build.json
│ │ └── tsconfig.json
│ ├── node-event-loop.jpg
│ ├── node-server.png
│ ├── node镜像.md
│ ├── pipeline
│ │ ├── README.md
│ │ ├── index.ts
│ │ ├── test.ts
│ │ └── types.d.ts
│ ├── playwright
│ │ └── README.md
│ ├── process1.png
│ ├── puppeteer
│ │ ├── README.md
│ │ ├── maotai.ts
│ │ ├── test-case
│ │ │ ├── README.md
│ │ │ ├── base-flow.ts
│ │ │ ├── login-flow.ts
│ │ │ ├── types
│ │ │ │ └── global.d.ts
│ │ │ └── utils
│ │ │ │ ├── image-recognize.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── login.ts
│ │ └── test.ts
│ ├── require加载机制.png
│ ├── skeleton
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── index.js
│ │ ├── build
│ │ │ ├── rename.ts
│ │ │ └── webpack.config.ts
│ │ ├── package.json
│ │ ├── skeleton.config.js
│ │ ├── src
│ │ │ ├── config
│ │ │ │ ├── attr.ts
│ │ │ │ ├── cach.ts
│ │ │ │ ├── default.ts
│ │ │ │ ├── dir.ts
│ │ │ │ ├── file.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── tag.ts
│ │ │ ├── index.ts
│ │ │ ├── types
│ │ │ │ ├── common.ts
│ │ │ │ ├── diy.d.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── parser.ts
│ │ │ └── utils
│ │ │ │ ├── action.ts
│ │ │ │ ├── assert.ts
│ │ │ │ ├── ast.ts
│ │ │ │ ├── babel.ts
│ │ │ │ ├── cach.ts
│ │ │ │ ├── dir.ts
│ │ │ │ ├── fs.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── klass.ts
│ │ │ │ ├── log.ts
│ │ │ │ ├── parser.ts
│ │ │ │ ├── random.ts
│ │ │ │ ├── reg.ts
│ │ │ │ └── treeshake.ts
│ │ ├── test
│ │ │ ├── case
│ │ │ │ ├── utils.js
│ │ │ │ ├── wxml.js
│ │ │ │ └── wxss.js
│ │ │ ├── index.js
│ │ │ ├── mocha.opts
│ │ │ ├── test.js
│ │ │ └── watch-script.js
│ │ ├── tsconfig.json
│ │ └── tslint.json
│ ├── tools
│ │ └── copy.js
│ ├── uuid.md
│ ├── vuepress-generator
│ │ ├── README.md
│ │ ├── index.ts
│ │ ├── types
│ │ │ ├── html2json.d.ts
│ │ │ └── index.d.ts
│ │ └── utils
│ │ │ ├── babel.ts
│ │ │ ├── compiler.ts
│ │ │ ├── const.ts
│ │ │ ├── fs.ts
│ │ │ ├── git.ts
│ │ │ ├── helper.ts
│ │ │ ├── hook.ts
│ │ │ ├── less.ts
│ │ │ ├── logger.ts
│ │ │ ├── postcss.ts
│ │ │ ├── swc.ts
│ │ │ ├── transfer.ts
│ │ │ └── tree.ts
│ ├── 事件循环.png
│ ├── 新版检测更新.md
│ ├── 最佳实践.md
│ ├── 查看cpu.png
│ └── 滴滴nodeX生态.png
├── npm&yarn
│ ├── README.md
│ ├── common-npm-pkg
│ │ ├── .babelrc
│ │ ├── .eslintignore
│ │ ├── .eslintrc.js
│ │ ├── .gitignore
│ │ ├── .npmignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── index.js
│ │ │ └── lib
│ │ │ │ └── test.js
│ │ └── webpack.config.js
│ ├── npm2.png
│ ├── npm3对比npm2.png
│ └── npm3模块冗余.png
├── ow
│ └── ow.js
├── parcel
│ ├── index.html
│ ├── index.js
│ └── index.scss
├── pg
│ └── README.md
├── phantomjs
│ └── test.js
├── postcss
│ ├── README.md
│ ├── postcss-markdown.js
│ ├── postcss.config.js
│ ├── postcss.js
│ ├── test.css
│ ├── test.final.md
│ ├── test.json
│ ├── test.less
│ └── test.md
├── preact
│ ├── README.md
│ ├── index.html
│ └── index.js
├── prototype
│ ├── README.md
│ ├── promise.js
│ ├── promise.png
│ └── prototype.html
├── python
│ ├── README.md
│ ├── ajax.py
│ ├── index.js
│ ├── index.py
│ ├── netease.json
│ ├── opencv.md
│ ├── sina.json
│ ├── sohu.json
│ └── super_cat.py
├── qone
│ └── qone.js
├── react
│ ├── .babelrc
│ ├── .browserslistrc
│ ├── .eslintrc
│ ├── .postcssrc
│ ├── Fiber遍历图.jpg
│ ├── README.md
│ ├── build
│ │ ├── webpack.base.js
│ │ ├── webpack.dev.js
│ │ └── webpack.prod.js
│ ├── fiber遍历过程(动画).gif
│ ├── index.html
│ ├── ink-index.js
│ ├── ink-test.js
│ ├── package.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ └── manifest.json
│ ├── react-16.13.1.png
│ ├── react-hook.jpg
│ ├── react16.3.png
│ ├── react17.png
│ ├── react状态管理-05.md
│ ├── react类型检查-01.md
│ ├── src
│ │ ├── App.test.js
│ │ ├── actions
│ │ │ ├── app.js
│ │ │ └── index.js
│ │ ├── app
│ │ │ ├── App.css
│ │ │ └── App.jsx
│ │ ├── bbx.jsx
│ │ ├── components
│ │ │ └── error
│ │ │ │ └── Error.jsx
│ │ ├── index.css
│ │ ├── index.jsx
│ │ ├── logo.svg
│ │ ├── reducers
│ │ │ ├── app.js
│ │ │ └── index.js
│ │ ├── registerServiceWorker.js
│ │ ├── selectors
│ │ │ └── app.js
│ │ └── store
│ │ │ └── index.js
│ ├── syncVSconcurrent.jpg
│ ├── test.tsx
│ ├── tip.txt
│ ├── v2-e00f66e71bd03b9d4c60d056c57be2e3_hd.jpg
│ └── yarn.lock
├── reactlike
│ ├── .gitignore
│ ├── README.md
│ ├── build
│ │ ├── common-manifest.json
│ │ ├── dll.common.js
│ │ ├── webpack.base.js
│ │ ├── webpack.dev.js
│ │ ├── webpack.dll.config.js
│ │ └── webpack.prod.js
│ ├── src
│ │ ├── Component.d.ts
│ │ ├── Component.js
│ │ ├── Component.js.map
│ │ ├── Component.ts
│ │ ├── createElement.d.ts
│ │ ├── createElement.js
│ │ ├── createElement.js.map
│ │ ├── createElement.ts
│ │ ├── hydrate.d.ts
│ │ ├── hydrate.js
│ │ ├── hydrate.js.map
│ │ ├── hydrate.ts
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── interface.d.ts
│ │ ├── interface.js
│ │ ├── interface.js.map
│ │ ├── interface.ts
│ │ ├── react.d.ts
│ │ ├── react.js
│ │ ├── react.js.map
│ │ ├── react.ts
│ │ ├── utils.d.ts
│ │ ├── utils.js
│ │ ├── utils.js.map
│ │ └── utils.ts
│ ├── test
│ │ ├── App.d.ts
│ │ ├── App.js
│ │ ├── App.js.map
│ │ ├── App.tsx
│ │ ├── ErrorBandary.d.ts
│ │ ├── ErrorBandary.js
│ │ ├── ErrorBandary.js.map
│ │ ├── ErrorBandary.tsx
│ │ ├── app-selector.d.ts
│ │ ├── app-selector.js
│ │ ├── app-selector.js.map
│ │ ├── app-selector.ts
│ │ ├── connect.d.ts
│ │ ├── connect.js
│ │ ├── connect.js.map
│ │ ├── connect.ts
│ │ ├── createSelector.d.ts
│ │ ├── createSelector.js
│ │ ├── createSelector.js.map
│ │ ├── createSelector.ts
│ │ ├── createStore.d.ts
│ │ ├── createStore.js
│ │ ├── createStore.js.map
│ │ ├── createStore.ts
│ │ ├── index.d.ts
│ │ ├── index.html
│ │ ├── index.js
│ │ ├── index.js.map
│ │ ├── index.tsx
│ │ ├── provider-props.d.ts
│ │ ├── provider-props.js
│ │ ├── provider-props.js.map
│ │ ├── provider-props.ts
│ │ ├── provider.d.ts
│ │ ├── provider.js
│ │ ├── provider.js.map
│ │ ├── provider.tsx
│ │ ├── reactlike.d.ts
│ │ ├── reactlike.js
│ │ ├── reactlike.js.map
│ │ ├── reactlike.tsx
│ │ └── store
│ │ │ ├── calculate.d.ts
│ │ │ ├── calculate.js
│ │ │ ├── calculate.js.map
│ │ │ ├── calculate.ts
│ │ │ ├── count.d.ts
│ │ │ ├── count.js
│ │ │ ├── count.js.map
│ │ │ ├── count.ts
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── index.js.map
│ │ │ └── index.ts
│ ├── tsconfig.json
│ └── tslint.json
├── reason
│ └── README.md
├── redux
│ ├── README.md
│ ├── redux.jpeg
│ └── redux.js
├── rematch-cli-source
│ ├── .gitignore
│ ├── .npmignore
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ ├── init.js
│ │ └── rematch.js
│ ├── index.js
│ ├── lib
│ │ ├── build.js
│ │ ├── code
│ │ │ ├── config
│ │ │ │ ├── rematch
│ │ │ │ │ └── package.json
│ │ │ │ └── typescript
│ │ │ │ │ └── package.json
│ │ │ ├── rematch
│ │ │ │ ├── README.md
│ │ │ │ ├── build
│ │ │ │ │ ├── webpack.base.js
│ │ │ │ │ ├── webpack.dev.js
│ │ │ │ │ ├── webpack.dll.config.js
│ │ │ │ │ └── webpack.prod.js
│ │ │ │ ├── public
│ │ │ │ │ ├── favicon.ico
│ │ │ │ │ ├── index.html
│ │ │ │ │ └── manifest.json
│ │ │ │ └── src
│ │ │ │ │ ├── app
│ │ │ │ │ ├── App.css
│ │ │ │ │ └── App.jsx
│ │ │ │ │ ├── components
│ │ │ │ │ └── header
│ │ │ │ │ │ ├── Header.jsx
│ │ │ │ │ │ └── Header.less
│ │ │ │ │ ├── index.css
│ │ │ │ │ ├── index.jsx
│ │ │ │ │ ├── logo.svg
│ │ │ │ │ ├── models
│ │ │ │ │ ├── header.js
│ │ │ │ │ └── index.js
│ │ │ │ │ ├── registerServiceWorker.js
│ │ │ │ │ ├── selectors
│ │ │ │ │ ├── app.js
│ │ │ │ │ └── header.js
│ │ │ │ │ └── store
│ │ │ │ │ └── index.js
│ │ │ └── typescript
│ │ │ │ ├── README.md
│ │ │ │ ├── build
│ │ │ │ ├── webpack.base.js
│ │ │ │ ├── webpack.dev.js
│ │ │ │ ├── webpack.dll.config.js
│ │ │ │ └── webpack.prod.js
│ │ │ │ ├── public
│ │ │ │ └── index.html
│ │ │ │ ├── src
│ │ │ │ ├── app
│ │ │ │ │ ├── App.css
│ │ │ │ │ └── App.tsx
│ │ │ │ ├── components
│ │ │ │ │ └── header
│ │ │ │ │ │ ├── Header.less
│ │ │ │ │ │ └── Header.tsx
│ │ │ │ ├── index.css
│ │ │ │ ├── index.tsx
│ │ │ │ ├── logo.svg
│ │ │ │ ├── models
│ │ │ │ │ ├── header.ts
│ │ │ │ │ └── index.ts
│ │ │ │ ├── selectors
│ │ │ │ │ ├── app.ts
│ │ │ │ │ └── header.ts
│ │ │ │ └── store
│ │ │ │ │ └── index.ts
│ │ │ │ ├── tsconfig.json
│ │ │ │ └── tslint.json
│ │ ├── index.js
│ │ ├── init.js
│ │ ├── server.config.js
│ │ ├── steps.js
│ │ └── utils.js
│ └── package.json
├── rematch
│ ├── README.md
│ ├── build
│ │ ├── common-manifest.json
│ │ ├── dll.common.js
│ │ ├── webpack.base.js
│ │ ├── webpack.dev.js
│ │ ├── webpack.dll.config.js
│ │ └── webpack.prod.js
│ ├── lib
│ │ ├── models
│ │ │ ├── count.js
│ │ │ └── index.js
│ │ ├── rematch-helper.js
│ │ ├── rematch.js
│ │ └── store.js
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ └── manifest.json
│ └── src
│ │ ├── app
│ │ ├── App.css
│ │ └── App.js
│ │ ├── components
│ │ ├── error
│ │ │ └── Error.jsx
│ │ └── header
│ │ │ ├── Header.jsx
│ │ │ └── Header.less
│ │ ├── index.css
│ │ ├── index.jsx
│ │ ├── logo.svg
│ │ ├── models
│ │ ├── calculate.js
│ │ ├── count.js
│ │ └── index.js
│ │ ├── registerServiceWorker.js
│ │ ├── selectors
│ │ ├── app.js
│ │ └── header.js
│ │ └── store
│ │ └── index.js
├── rollup
│ ├── README.md
│ └── rollup.config.js
├── rust
│ └── README.md
├── rxjs
│ ├── build
│ │ ├── webpack.dev.js
│ │ └── webpack.prod.js
│ ├── index.html
│ ├── index.js
│ └── test.js
├── serverless
│ ├── README.md
│ ├── 容灾预案.png
│ └── 通用serverless架构.jpg
├── shell
│ ├── README.md
│ └── test.sh
├── sicp
│ ├── README.md
│ ├── index.html
│ ├── sicp.js
│ └── test.lisp
├── signale
│ └── signale.js
├── socket&rpc
│ ├── README.md
│ ├── bundle.client.io.js
│ ├── client.js
│ ├── package.json
│ ├── pm2.md
│ ├── pm2流程.jpeg
│ ├── rpc-client.js
│ ├── rpc-server.js
│ ├── simple-pm2
│ │ ├── README.md
│ │ ├── daemon.js
│ │ ├── rpc-client.js
│ │ └── rpc-server.js
│ ├── socket.html
│ └── socket.js
├── sourcemap
│ ├── README.md
│ ├── common.json
│ ├── sourcemapCompiler
│ │ ├── README.md
│ │ ├── compiler.ts
│ │ ├── index.ts
│ │ ├── types.d.ts
│ │ └── utils.ts
│ └── test.js
├── sql
│ ├── README.md
│ ├── Smartsql
│ │ ├── AbstractSql.ts
│ │ ├── AnySql.ts
│ │ ├── README.md
│ │ ├── const.ts
│ │ ├── domain
│ │ │ └── aggregate
│ │ │ │ ├── AbstractTable.ts
│ │ │ │ └── MTable1.ts
│ │ ├── index.ts
│ │ ├── service
│ │ │ ├── AbstractService.ts
│ │ │ └── testService.ts
│ │ └── types.d.ts
│ ├── join示例.jpeg
│ ├── oltp和olap.jpeg
│ ├── 列压缩.jpeg
│ ├── 列存储.jpeg
│ ├── 列存储.md
│ └── 索引示意图.jpeg
├── storybook
│ ├── README.md
│ └── index.jsx
├── taro
│ └── README.md
├── tars
│ ├── HelloWorld.tgz
│ └── index.js
├── test-tools
│ ├── README.md
│ └── cucumber语法中文映射.png
├── test
│ ├── build
│ │ ├── webpack.common.js
│ │ ├── webpack.dev.js
│ │ └── webpack.prod.js
│ ├── css
│ │ ├── default.css
│ │ ├── green.css
│ │ └── red.css
│ ├── index.html
│ ├── src
│ │ ├── ad-code.js
│ │ ├── asciichart.js
│ │ ├── can.js
│ │ ├── chance.js
│ │ ├── city-code.js
│ │ ├── city2jw.js
│ │ ├── citycode2jw.js
│ │ ├── code2jw.js
│ │ ├── data.txt
│ │ ├── debugclient.js
│ │ ├── exchange-robot.js
│ │ ├── filepond.js
│ │ ├── graphql.js
│ │ ├── jsx.jsx
│ │ ├── lumin.js
│ │ ├── nativeScript.js
│ │ ├── nightwatch.js
│ │ ├── saveImage.js
│ │ ├── server.js
│ │ ├── test.html
│ │ ├── test.js
│ │ ├── tui.js
│ │ ├── v8n.js
│ │ ├── web-component.js
│ │ ├── webdriver.js
│ │ └── wired-elements.js
│ └── tsconfig.json
├── tfjs
│ ├── tfjs.html
│ └── tfjs.js
├── threejs
│ └── README.md
├── tools
│ ├── Default Keybindings.json
│ ├── README.md
│ └── keyBindings.json
├── travis
│ └── README.md
├── treeshake
│ ├── README.md
│ ├── build
│ │ └── rollup.config.js
│ └── src
│ │ ├── index.js
│ │ └── other.js
├── trip
│ └── 苏州无锡3日2晚游.docx
├── typescript
│ ├── README.md
│ └── common-ts-start
│ │ ├── .editorconfig
│ │ ├── .eslintignore
│ │ ├── .eslintrc.js
│ │ ├── .prettierrc.js
│ │ ├── package.json
│ │ ├── src
│ │ ├── index.ts
│ │ ├── types
│ │ │ ├── html2json.d.ts
│ │ │ └── index.d.ts
│ │ └── utils
│ │ │ ├── const.ts
│ │ │ ├── fs.ts
│ │ │ ├── helper.ts
│ │ │ ├── hook.ts
│ │ │ └── logger.ts
│ │ └── tsconfig.json
├── unit-test
│ └── README.md
├── v8
│ ├── README.md
│ ├── js引擎执行流程.png
│ ├── v8内部结构.png
│ └── 字节码.png
├── visualize
│ └── README.md
├── vscode
│ ├── README.md
│ ├── extension.md
│ ├── keyBindings.json
│ └── settings.json
├── vue
│ ├── README.md
│ ├── datapanel
│ │ ├── README.md
│ │ ├── const.js
│ │ ├── helpers.js
│ │ ├── index.js
│ │ └── utils.js
│ ├── signal.md
│ ├── useXXX.md
│ ├── vite2.9初始化.png
│ ├── vite3.0初始化.png
│ ├── vue-mark-display
│ │ ├── App.vue
│ │ ├── index.html
│ │ ├── main.js
│ │ └── welcome.md
│ ├── vue-pretty-tree
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── index.vue
│ │ └── tree-node.vue
│ ├── vue-smart-table
│ │ ├── README.md
│ │ ├── const.ts
│ │ ├── helper.ts
│ │ ├── index.d.ts
│ │ ├── index.less
│ │ ├── index.ts
│ │ └── index.vue
│ ├── vue3.md
│ └── vuepress
│ │ └── README.md
├── webComponent
│ └── README.md
├── webassembly
│ ├── README.md
│ ├── app.js
│ ├── emscripten
│ │ ├── README.md
│ │ └── emscripten编译过程.png
│ ├── index.html
│ ├── test.wasm
│ └── wasm.webp
└── webpack
│ ├── .gitignore
│ ├── README.md
│ ├── app.js
│ ├── app.ts
│ ├── diy.js
│ ├── enviro-variable.js
│ ├── fsevents.js
│ ├── import-polyfill.png
│ ├── index.ts
│ ├── js-hot-loader
│ ├── .npmignore
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ └── pojo-loader.js
│ ├── index.js
│ ├── lib
│ │ └── index.js
│ └── package.json
│ ├── manifest.json
│ ├── package.json
│ ├── pitch&normal-loader.jpeg
│ ├── plugin.js
│ ├── pojo-loader
│ ├── .npmignore
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ └── pojo-loader.js
│ ├── index.js
│ ├── lib
│ │ └── index.js
│ └── package.json
│ ├── src
│ ├── app.html
│ ├── app.js
│ ├── app.less
│ ├── app.png
│ ├── app2.js
│ ├── number.js
│ ├── person.pojo
│ ├── polyfills.js
│ ├── ref.json
│ └── test2.js
│ ├── test
│ └── test1.js
│ ├── tsconfig.json
│ ├── webpack-async.jpeg
│ ├── webpack.base.js
│ ├── webpack.code-splitting.config.js
│ ├── webpack.common.js
│ ├── webpack.config.js
│ ├── webpack.dev.js
│ ├── webpack.diy.config.js
│ ├── webpack.prod.js
│ ├── webpack.server.js
│ ├── webpack.simple.js
│ ├── webpack.ts.config.js
│ ├── webpack流程.jpg
│ └── 项目&组件编译
│ ├── webpack.common.js
│ ├── webpack.component.js
│ ├── webpack.dev.js
│ └── webpack.prod.js
├── tasks
├── init.sh
└── install.sh
├── test.js
├── test.sql
├── test
├── mocha.opts
└── src
│ ├── immer.js
│ ├── meta-programming.js
│ └── promise.js
├── tsconfig.json
├── webpack.config.js
├── worker
├── index.js
└── package.json
└── yarn.lock
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "@babel/preset-react",
4 | "react",
5 | "@babel/preset-env"
6 | ],
7 | "plugins": [
8 | "transform-runtime",
9 | "transform-decorators-legacy",
10 | "transform-class-properties"
11 | ],
12 | "env": {
13 | "test": {
14 | "sourceMaps": "inline"
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/.browserslistrc:
--------------------------------------------------------------------------------
1 | > 1%
2 | last 2 versions
--------------------------------------------------------------------------------
/.cache/20844ed58e2e19ee548a9d8d7b612771.json:
--------------------------------------------------------------------------------
1 | {"dependencies":[{"name":"./src/foo.js","dynamic":true}],"generated":{"html":"\n\n
\n \n Development\n \n \n \n"},"hash":"59d5013e3e86d9d10902f4176984dcea"}
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | {
2 | "editor.formatOnSave": true,
3 | "editor.formatOnType": true,
4 | "editor.formatOnPaste": true
5 | }
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules/
2 | /mochawesome-reports/
3 | /dist/
4 | /build/
5 | /src/mobx/dist/
6 | /alipay-electron/
7 | *.lock
8 | .DS_Store
9 | */.DS_Store
10 | package-lock.json
11 | settings.json
--------------------------------------------------------------------------------
/.npmrc:
--------------------------------------------------------------------------------
1 | registry=https://registry.npmmirror.com
--------------------------------------------------------------------------------
/.postcssrc:
--------------------------------------------------------------------------------
1 | {
2 | "modules": true,
3 | "plugins": {
4 | "autoprefixer": {
5 | "grid": true
6 | }
7 | }
8 | }
--------------------------------------------------------------------------------
/.storybook/config.js:
--------------------------------------------------------------------------------
1 | import { configure } from '@storybook/react';
2 |
3 | function loadStories() {
4 | require('../src/storybook/index');
5 | }
6 |
7 | configure(loadStories, module);
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "type": "node",
6 | "request": "launch",
7 | "name": "Launch Program",
8 | "program": "${file}"
9 | }
10 | ]
11 | }
--------------------------------------------------------------------------------
/SUMMARY.md:
--------------------------------------------------------------------------------
1 | # Summary
2 |
3 | * [Introduction](README.md)
4 | * [webpack](./src/webpack/README.md)
5 |
--------------------------------------------------------------------------------
/_config.yml:
--------------------------------------------------------------------------------
1 | theme: jekyll-theme-architect
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/journals/2020_11_27.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Nov 27th, 2020
3 | ---
4 |
5 | ##
--------------------------------------------------------------------------------
/logseq/custom.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/logseq/custom.css
--------------------------------------------------------------------------------
/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "common.js": "common.b0483df22977295d2459.js",
3 | "index.css": "e15e2.bundle.css",
4 | "index.js": "index.b0483df22977295d2459.js",
5 | "logo.svg": "5d5d9eefa31e5e13a6610d9fa7a283bb.svg"
6 | }
--------------------------------------------------------------------------------
/pages/contents.md:
--------------------------------------------------------------------------------
1 | ##
--------------------------------------------------------------------------------
/src/MathML/README.md:
--------------------------------------------------------------------------------
1 | ## 参考
2 | - https://www.ibm.com/developerworks/cn/xml/x-mathml/index.html
--------------------------------------------------------------------------------
/src/algorithm/leetcode/README.md:
--------------------------------------------------------------------------------
1 | # leetcode
2 |
3 | - [leetcode算法部分解答](https://blog.csdn.net/qq_37372007/article/details/80073096)
4 | - [leetcode题解](https://github.com/doocs/leetcode)
5 | - [leetcode100题](https://leetcode.cn/studyplan/top-100-liked/)
--------------------------------------------------------------------------------
/src/algorithm/leetcode/巧技-重复子字符串.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 题目:
3 | * 巧技-重复子字符串
4 | *
5 | */
6 | function repeatedSubstringPattern(s) {
7 | let s1 = (s + s).slice(1, -1);
8 | return s1.indexOf(s) != -1;
9 | }
--------------------------------------------------------------------------------
/src/algorithm/leetcode/异或-找数组中的唯一数.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 找数组中的唯一数
3 | *
4 | * 举例:
5 | * 给定:[1,3,3,17,1]
6 | *
7 | * 唯一数是 17
8 | *
9 | */
10 | function findUniqueNumber(nums) {
11 | return nums.reduce((val, num) => val ^ num);
12 | }
--------------------------------------------------------------------------------
/src/algorithm/math/factorial.js:
--------------------------------------------------------------------------------
1 | // 阶乘 - 非递归
2 | function factorial(num) {
3 | if (num <= 1) return num;
4 | let result = num;
5 | while (num > 1) {
6 | result *= --num;
7 | }
8 | return result;
9 | };
10 |
11 | // test
12 | // console.log(factorial(4));
--------------------------------------------------------------------------------
/src/algorithm/math/integerPartition.js:
--------------------------------------------------------------------------------
1 | // 整数拆分
2 |
3 |
--------------------------------------------------------------------------------
/src/algorithm/math/liuHui.js:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | * 刘徽割圆术
4 | * @param {Number} splitCount [description]
5 | * @return {[type]} [description]
6 | *
7 | * 概念
8 | *
9 | * 以六边形为界,多次平分(12边、24边等),
10 | * 最后的n边形会无限接近其顶点连成的圆
11 | *
12 | */
13 | function liuHui(splitCount = 1) {
14 |
15 | };
--------------------------------------------------------------------------------
/src/algorithm/structure/avl-tree.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/algorithm/structure/avl-tree.gif
--------------------------------------------------------------------------------
/src/algorithm/structure/avl-tree.md:
--------------------------------------------------------------------------------
1 | **平衡二叉树**
2 |
3 | 
--------------------------------------------------------------------------------
/src/algorithm/structure/二叉树节点访问顺序.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/algorithm/structure/二叉树节点访问顺序.png
--------------------------------------------------------------------------------
/src/algorithm/structure/二叉索引树.js:
--------------------------------------------------------------------------------
1 | // http://novoland.github.io/%E7%AE%97%E6%B3%95/2014/07/26/%E4%BA%8C%E8%BF%9B%E5%88%B6%E7%B4%A2%E5%BC%95%E6%A0%91(%E6%A0%91%E7%8A%B6%E6%95%B0%E7%BB%84).html
2 |
--------------------------------------------------------------------------------
/src/algorithm/structure/优先队列.js:
--------------------------------------------------------------------------------
1 | // 相对于普通队列,每个队列中元素有优先级
--------------------------------------------------------------------------------
/src/algorithm/structure/先序遍历.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/algorithm/structure/先序遍历.png
--------------------------------------------------------------------------------
/src/algorithm/structure/哈希表.js:
--------------------------------------------------------------------------------
1 | // key-value
--------------------------------------------------------------------------------
/src/algorithm/structure/图.js:
--------------------------------------------------------------------------------
1 |
2 | function Graph() {
3 |
4 | };
5 |
6 | /**
7 | * 边
8 | */
9 | function Edge() {
10 |
11 | };
12 |
13 | /**
14 | * 节点
15 | */
16 | function Vertex() {
17 |
18 | };
19 |
--------------------------------------------------------------------------------
/src/algorithm/structure/栈.js:
--------------------------------------------------------------------------------
1 | // 后进先出
--------------------------------------------------------------------------------
/src/algorithm/structure/树.md:
--------------------------------------------------------------------------------
1 | **有方向的堆**
--------------------------------------------------------------------------------
/src/algorithm/structure/红黑树.md:
--------------------------------------------------------------------------------
1 | **类似avl-tree**
2 |
3 | [参考](https://segmentfault.com/a/1190000012728513)
4 |
5 |
6 | **特点**
7 |
8 | - R-Node(红节点)的子节点必须是B-Node(黑节点)
9 | - 根节点必须是B-Node
10 | - 叶节点必须为空并且是B-Node
11 | - 从根到任一叶节点的路径经过的B-Node数量(称为黑色高度)必须都一样。
--------------------------------------------------------------------------------
/src/algorithm/structure/队列.js:
--------------------------------------------------------------------------------
1 | // 先进先出
--------------------------------------------------------------------------------
/src/angular/JIT&AOT.md:
--------------------------------------------------------------------------------
1 | ## 参考
2 | - https://segmentfault.com/a/1190000008739157
3 |
4 | ## 对比
5 | | | JIT | AOT |
6 | | -------- | -----: | :----: |
7 | | 编译平台 | 浏览器 | 服务器 |
8 | | 编译时机 | Runtime | Build |
9 | | 包大小 | 较大 | 较小 |
10 | | 执行性能 | - | 好 |
11 | | 启动时间 | - | 短 |
--------------------------------------------------------------------------------
/src/angular/README.md:
--------------------------------------------------------------------------------
1 | # angular
2 |
3 | ## 监听变更
4 | - 单向数据流 + 脏检查
5 | - 
--------------------------------------------------------------------------------
/src/angular/render.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/angular/render.jpg
--------------------------------------------------------------------------------
/src/babel/acorn流程.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/babel/acorn流程.png
--------------------------------------------------------------------------------
/src/babel/babel流程.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/babel/babel流程.png
--------------------------------------------------------------------------------
/src/babel/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/babel/path属性&方法.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/babel/path属性&方法.png
--------------------------------------------------------------------------------
/src/babel/treeshaking-v1/base.js:
--------------------------------------------------------------------------------
1 |
2 | module.exports = {
3 | lastName: 'lastName',
4 | arrayEachRight: 'arrayEachRight',
5 | arrayFilter: 'arrayFilter',
6 | arrayEvery: 'arrayEvery',
7 | };
8 |
--------------------------------------------------------------------------------
/src/babel/treeshaking-v1/test.js:
--------------------------------------------------------------------------------
1 | import { isPlainObject, isAa } from './test-lib';
2 | const { isPlainObject: aaaa } = require('./test-lib');
3 | const test = require('./test-lib');
4 |
5 | test.isPlainObject({}, 'aaaabbbb');
6 | isPlainObject({
7 | cc: 'a123'
8 | });
9 |
10 | function aaa() {
11 | aaaa({});
12 | isAa();
13 | };
14 | aaa();
--------------------------------------------------------------------------------
/src/book/DIP-1.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/DIP-1.jpeg
--------------------------------------------------------------------------------
/src/book/ISP-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/ISP-1.png
--------------------------------------------------------------------------------
/src/book/LSP-1.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/LSP-1.jpeg
--------------------------------------------------------------------------------
/src/book/OCP-1.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/OCP-1.jpeg
--------------------------------------------------------------------------------
/src/book/README.md:
--------------------------------------------------------------------------------
1 | # 书单
2 |
3 | > 知识、常识、胆识、见识
4 |
5 | - https://addyosmani.com/blog/soft-skills-books/
6 | - [2023 年值得持续阅读的内容平台](https://justgoidea.com/posts/2023-063/)
7 | - [积薪](https://firewood.news/)
8 | - [太隐](https://wangyurui.com/)
9 | - [2025齐俊杰书单](https://mp.weixin.qq.com/s/bCzVNIeH4LNS35sR6QoQAQ?token=838542913&lang=zh_CN)
--------------------------------------------------------------------------------
/src/book/SRP-1.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/SRP-1.jpeg
--------------------------------------------------------------------------------
/src/book/SRP-2.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/SRP-2.jpeg
--------------------------------------------------------------------------------
/src/book/SRP-3.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/SRP-3.jpeg
--------------------------------------------------------------------------------
/src/book/The Grammer of Graphics.md:
--------------------------------------------------------------------------------
1 | # 图形语法
2 |
3 | ### 数据->图形
4 |
5 | - start
6 |
7 | - 变量
8 |
9 | - 代数
10 |
11 | - 比例(规模)
12 |
13 | - 统计
14 |
15 | - 几何
16 |
17 | - 坐标系
18 |
19 | - 美学
20 |
21 | - end
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/book/designing delivery.md:
--------------------------------------------------------------------------------
1 | # 设计交付
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/src/book/fact模型.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/fact模型.jpeg
--------------------------------------------------------------------------------
/src/book/oltp和olap.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/oltp和olap.jpeg
--------------------------------------------------------------------------------
/src/book/为什么是中国.md:
--------------------------------------------------------------------------------
1 | # 为什么是中国
2 |
3 | > 思想建党,政治建军
4 |
5 | - 不将马克思主义绝对化,不将以往经验绝对化,用中国方法解决中国问题
6 |
7 | - 各种制度都有存在的理由,彼此发展,相互借鉴,共获双赢
8 |
9 | - 中美是科技之争
10 |
11 | - 辩证唯物主义 + 历史唯物主义
12 |
13 | ### 辩证唯物主
14 |
--------------------------------------------------------------------------------
/src/book/主键分区.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/主键分区.jpeg
--------------------------------------------------------------------------------
/src/book/事实.md:
--------------------------------------------------------------------------------
1 | # 事实
2 |
3 | ## 几个准则
4 | - 忌一分为二,非黑即白,很多都是灰色地带
5 | - 忌直线思想,换个角度思考
6 | - 忌以偏概全,事实说话
7 | - 忌纯归咎他人
8 | - 时刻对坏结果做准备
9 | - 应对恐惧,可以预估存在的风险
10 | - 不要光看数据,要看比例
11 |
--------------------------------------------------------------------------------
/src/book/人才评估打分.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/人才评估打分.jpeg
--------------------------------------------------------------------------------
/src/book/兰伯特时间戳.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/兰伯特时间戳.jpeg
--------------------------------------------------------------------------------
/src/book/分区.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/分区.jpeg
--------------------------------------------------------------------------------
/src/book/动物农场.md:
--------------------------------------------------------------------------------
1 | # 动物农场
2 |
3 | - 阶级矛盾永远存在,不随某个阶级的消失而消失
4 |
5 | - 猪其实智商很高
6 |
7 | - 一定要避免暴露自己的弱点
8 |
9 | - 投机主义者:明确局势后才出手
10 |
11 | - 历史车轮在推翻-重建-摊牌的过程中反复碾压
12 |
--------------------------------------------------------------------------------
/src/book/四种代码结构.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/四种代码结构.jpeg
--------------------------------------------------------------------------------
/src/book/好用的网站.md:
--------------------------------------------------------------------------------
1 | - [大学生好用网站](https://zhuanlan.zhihu.com/p/60766588)
--------------------------------------------------------------------------------
/src/book/插件式架构.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/插件式架构.jpeg
--------------------------------------------------------------------------------
/src/book/散列分区.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/散列分区.jpeg
--------------------------------------------------------------------------------
/src/book/数据复制&分区.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/数据复制&分区.jpeg
--------------------------------------------------------------------------------
/src/book/整洁架构.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/整洁架构.jpeg
--------------------------------------------------------------------------------
/src/book/更好的系统架构设计.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/更好的系统架构设计.jpeg
--------------------------------------------------------------------------------
/src/book/有向无环图.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/有向无环图.jpeg
--------------------------------------------------------------------------------
/src/book/服务发现.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/服务发现.jpeg
--------------------------------------------------------------------------------
/src/book/梦的解析.md:
--------------------------------------------------------------------------------
1 | # 梦的解析
2 |
3 | ## 三我
4 |
5 | ### 本我
6 | 人的兽性,遵循不计后果的快乐原则
7 |
8 | ### 自我
9 | 人的环境适应性,遵循迂回满足的现实原则
10 |
11 | ### 超我
12 | 人的社会性,遵循不计后果的道德原则
13 |
14 | ## 梦
15 | - 愿望的实现?
16 | - 现实记忆的组装?
17 |
--------------------------------------------------------------------------------
/src/book/用户关注点的变化.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/用户关注点的变化.jpeg
--------------------------------------------------------------------------------
/src/book/硅谷钢铁侠.md:
--------------------------------------------------------------------------------
1 | # 硅谷钢铁侠
2 |
3 | - 做事前,要花大量时间验证想法的可行性,然后才能付诸实践
4 | - 不断寻找志同道合的人才加入团队,才能一起走的更远
5 | - 明知结果无法挽回时,应果断妥协,另寻出路
6 |
7 | - 如果可以的话,还是站在巨人肩膀上创新
8 | - 通过“打怪升级”,成为跨界人才
9 | - 向他人提出请求前,自己先要有明确的、全面的计划
10 | - 要想马儿跑就要先给马儿吃好草
11 | - 996不算事,7127走起
--------------------------------------------------------------------------------
/src/book/稳定抽象原则.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/稳定抽象原则.jpeg
--------------------------------------------------------------------------------
/src/book/管理心理学.md:
--------------------------------------------------------------------------------
1 | # 管理心理学
2 |
3 | ## 研究内容
4 | - 动机管理
5 | - 认知管理
6 | - 情绪管理
7 | - 行为管理
8 | - 组织管理
9 |
10 |
--------------------------------------------------------------------------------
/src/book/索引示意图.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/索引示意图.jpeg
--------------------------------------------------------------------------------
/src/book/红星照耀中国.md:
--------------------------------------------------------------------------------
1 | # 红星照耀中国
2 |
3 | > 红军是人民打击压迫者的拳头
4 |
5 | **西安事变为什么不杀常凯申?**
6 |
7 | - 最终目标是国共合作抗日
8 |
9 | - 国方需要一个有绝对影响力的话事人赞成合作
10 |
11 | - 常有绝对影响力,但态度摇摆
12 |
13 | - 杀常只会导致国方再度分裂,战和纷争
14 |
15 | - 在保证常不掉威信的前提下,逼迫主战是正解
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/book/组件聚合.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/book/组件聚合.jpeg
--------------------------------------------------------------------------------
/src/book/资本论.md:
--------------------------------------------------------------------------------
1 | # 资本论
2 |
3 | ## 商品和货币
4 |
5 | #### 商品
6 |
7 | - 使用价值 + 商品价值
8 | - 价值量和生产所需劳动成正比
9 | - 生产力决定了单位时间产生的价值量
10 | - 价值量取决于商品间相对价值
11 |
12 |
--------------------------------------------------------------------------------
/src/book/资治通鉴.md:
--------------------------------------------------------------------------------
1 | # 资治通鉴
2 |
3 | ### 识人之法
4 |
5 | - 看其发达时,交往的、推崇的人
6 |
7 | - 看其(即使)落魄时,不做的、不取的事
8 |
9 | ### 处世
10 |
11 | - 对上,时刻遵守礼法,绝不松懈
12 | - 对下,实权分摊(即使再信任),分割派系,相互掣肘
13 |
--------------------------------------------------------------------------------
/src/book/马斯克传.md:
--------------------------------------------------------------------------------
1 | # 马斯克传
2 |
3 | [学得来的部分]([Docs](https://rtw1bnq45a.feishu.cn/docx/YSrbd6JyBoUD5UxKPjXcvdCpnRc))
4 |
--------------------------------------------------------------------------------
/src/canvas/README.md:
--------------------------------------------------------------------------------
1 | # canvas
2 |
3 | ## three.js
4 |
5 | - [实现VR看房](https://juejin.cn/post/6973865268426571784)
6 | - [B站弹幕实现原理](https://hughfenghen.github.io/fe/body-mask-danmaku/#%E6%80%BB%E7%BB%93)
7 | - [leaferjs](https://www.leaferjs.com/)
8 |
9 |
10 | ## html2canvas
11 | ### 原理
12 | 基于[7阶层叠水平](https://mp.weixin.qq.com/s/BkpVZ30GGwV-T6jGXPt0QQ)实现
13 |
--------------------------------------------------------------------------------
/src/career/OLTP和OLAP.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/OLTP和OLAP.png
--------------------------------------------------------------------------------
/src/career/apm-overall.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/apm-overall.jpg
--------------------------------------------------------------------------------
/src/career/apm-sort.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/apm-sort.jpg
--------------------------------------------------------------------------------
/src/career/csr&ssr.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/csr&ssr.jpeg
--------------------------------------------------------------------------------
/src/career/devOps.md:
--------------------------------------------------------------------------------
1 | # devOps
2 |
3 | [TOC]
4 |
5 | ## 参考
6 |
7 | - [字节mobile devops实践](https://mp.weixin.qq.com/s/hR6XlxHFQTJSQQo34hWvfg)
8 |
9 |
--------------------------------------------------------------------------------
/src/career/druid-data-groupby.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/druid-data-groupby.png
--------------------------------------------------------------------------------
/src/career/i18n.md:
--------------------------------------------------------------------------------
1 | # i18n
2 |
3 |
4 |
5 | ## 示例
6 |
7 | ```vue
8 |
9 | 你好,{{ name }},欢迎来到世界!
10 |
11 | ```
12 |
13 |
--------------------------------------------------------------------------------
/src/career/json-web-token.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/json-web-token.png
--------------------------------------------------------------------------------
/src/career/k8s.md:
--------------------------------------------------------------------------------
1 | # k8s
2 |
3 |
4 |
5 | ## 参考
6 |
7 | - [可视化管理界面](https://demo.kubesphere.io/demo-workspace/clusters/host/projects/app-test/applications/template)
8 |
9 |
--------------------------------------------------------------------------------
/src/career/kylin-data-cube.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/kylin-data-cube.png
--------------------------------------------------------------------------------
/src/career/linux性能命令.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/linux性能命令.jpg
--------------------------------------------------------------------------------
/src/career/mac快捷键.md:
--------------------------------------------------------------------------------
1 | # mac快捷键
2 |
3 | ### chrome终端
4 | cmd + alt + i
5 |
6 | ### 呼出快捷指令面板
7 | cmd + shift + p
8 |
9 | [显示fps](./显示fps.gif)
10 |
11 | ### stepInto
12 | cmd + alt + ;
13 |
14 | ### stepNext
15 | cmd + alt + ,
16 |
17 | ### 显示隐藏文件
18 | cmd + shift + .
--------------------------------------------------------------------------------
/src/career/三层四面.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/三层四面.jpg
--------------------------------------------------------------------------------
/src/career/产品相关.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/产品相关.jpeg
--------------------------------------------------------------------------------
/src/career/企业价值倍数.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/企业价值倍数.jpeg
--------------------------------------------------------------------------------
/src/career/债券周期.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/债券周期.png
--------------------------------------------------------------------------------
/src/career/光波&电波.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/光波&电波.jpg
--------------------------------------------------------------------------------
/src/career/全栈.md:
--------------------------------------------------------------------------------
1 | # 全栈
2 |
3 | ## 参考
4 |
5 | - [基于 react 的全栈框架blitz](https://blitzjs.com/)
6 | -
--------------------------------------------------------------------------------
/src/career/写业务代码的方法论.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/写业务代码的方法论.jpg
--------------------------------------------------------------------------------
/src/career/冰山模型.jfif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/冰山模型.jfif
--------------------------------------------------------------------------------
/src/career/列存储.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/列存储.jpg
--------------------------------------------------------------------------------
/src/career/前端渲染历史.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/前端渲染历史.png
--------------------------------------------------------------------------------
/src/career/功率密度标准.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/功率密度标准.jpg
--------------------------------------------------------------------------------
/src/career/发布订阅.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/发布订阅.png
--------------------------------------------------------------------------------
/src/career/发布订阅vs观察者.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/发布订阅vs观察者.jpg
--------------------------------------------------------------------------------
/src/career/可转债规则.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/可转债规则.jpeg
--------------------------------------------------------------------------------
/src/career/商业模式画布.jfif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/商业模式画布.jfif
--------------------------------------------------------------------------------
/src/career/国情对应美林时钟.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/国情对应美林时钟.jpeg
--------------------------------------------------------------------------------
/src/career/基站功率.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/基站功率.jpg
--------------------------------------------------------------------------------
/src/career/市净率.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/市净率.jpeg
--------------------------------------------------------------------------------
/src/career/市现率.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/市现率.jpeg
--------------------------------------------------------------------------------
/src/career/市盈率.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/市盈率.png
--------------------------------------------------------------------------------
/src/career/市销率.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/市销率.png
--------------------------------------------------------------------------------
/src/career/常用指标.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/常用指标.jpeg
--------------------------------------------------------------------------------
/src/career/开发视角前端架构.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/开发视角前端架构.png
--------------------------------------------------------------------------------
/src/career/异地多活.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/异地多活.jpeg
--------------------------------------------------------------------------------
/src/career/微信背后的产品观.pdf.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/微信背后的产品观.pdf.zip
--------------------------------------------------------------------------------
/src/career/技术全局视角.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/技术全局视角.jpeg
--------------------------------------------------------------------------------
/src/career/技术思考-技术价值.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/技术思考-技术价值.png
--------------------------------------------------------------------------------
/src/career/技术思考-研发效能度量体系.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/技术思考-研发效能度量体系.png
--------------------------------------------------------------------------------
/src/career/投资趋势.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/投资趋势.jpeg
--------------------------------------------------------------------------------
/src/career/持续集成.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/持续集成.jpg
--------------------------------------------------------------------------------
/src/career/数据处理.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/数据处理.jpg
--------------------------------------------------------------------------------
/src/career/数据架构示意图.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/数据架构示意图.jpg
--------------------------------------------------------------------------------
/src/career/显示fps.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/显示fps.gif
--------------------------------------------------------------------------------
/src/career/流程-看板.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/流程-看板.jpeg
--------------------------------------------------------------------------------
/src/career/浏览器兼容规范.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/浏览器兼容规范.jpg
--------------------------------------------------------------------------------
/src/career/深度学习.md:
--------------------------------------------------------------------------------
1 | # 深度学习
2 |
3 |
4 |
5 | ## 参考
6 |
7 | - [fast.ai 公开课](https://course.fast.ai/Lessons/lesson1.html)
--------------------------------------------------------------------------------
/src/career/生产变更.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/生产变更.png
--------------------------------------------------------------------------------
/src/career/电磁辐射.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/电磁辐射.jpg
--------------------------------------------------------------------------------
/src/career/端智能.md:
--------------------------------------------------------------------------------
1 | # 端智能
2 |
3 | > 传统流程中,AI推测模型部署在服务侧,客户端发起请求,服务端推理完后返回结果;
4 | >
5 | > 端智能指的是在客户端完成推理过程。
6 |
7 | ---
8 |
9 | ## CPU or GPU
10 |
11 | 在gpu不支持时,cpu 可以作为降级选项。
12 |
13 | ### webGL
14 |
15 | 现标准,性能高,通用性好。
16 |
17 | ### webGPU
18 |
19 | 2017年新标准,,支持多线程。
20 |
21 | ### webassemble
22 |
23 | 当客户端不支持 webGL,或性能较低,可用此降级。
24 |
25 |
--------------------------------------------------------------------------------
/src/career/简易sso.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/简易sso.png
--------------------------------------------------------------------------------
/src/career/精进表达模型.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/精进表达模型.jpeg
--------------------------------------------------------------------------------
/src/career/美林投资时钟.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/美林投资时钟.jpeg
--------------------------------------------------------------------------------
/src/career/职业发展方向.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/职业发展方向.jpeg
--------------------------------------------------------------------------------
/src/career/股权风险溢价.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/股权风险溢价.png
--------------------------------------------------------------------------------
/src/career/股权风险溢价走势-2024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/股权风险溢价走势-2024.png
--------------------------------------------------------------------------------
/src/career/行存储.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/行存储.jpg
--------------------------------------------------------------------------------
/src/career/观察者.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/观察者.png
--------------------------------------------------------------------------------
/src/career/资产的不相关性.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/资产的不相关性.png
--------------------------------------------------------------------------------
/src/career/通用前端架构.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/通用前端架构.png
--------------------------------------------------------------------------------
/src/career/逻辑递进.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/逻辑递进.jpg
--------------------------------------------------------------------------------
/src/career/采集端控制.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/采集端控制.jpg
--------------------------------------------------------------------------------
/src/career/金融周期.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/金融周期.png
--------------------------------------------------------------------------------
/src/career/集群sso.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/集群sso.png
--------------------------------------------------------------------------------
/src/career/页面健康度.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/页面健康度.png
--------------------------------------------------------------------------------
/src/career/页面评分细则.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/career/页面评分细则.jpeg
--------------------------------------------------------------------------------
/src/career/高并发.md:
--------------------------------------------------------------------------------
1 | # 高并发
2 |
3 | > 运维的核心价值不在于资源的扩充,而在于资源的隔离
4 |
5 | ## 参考
6 |
7 | [服务器虚拟化 | 高并发的哲学原理](https://pphc.lvwenhan.com/part-two/infrastructure-concurrency/section-1)
8 |
9 | ## 优化手段
10 |
11 | - 静态资源隔离(cdn)
12 |
13 | - 数据库和api隔离
14 |
15 | - 非实时数据走redis
16 |
17 | - 反爬(单ip限流、ip段限流、UA限流)
18 |
--------------------------------------------------------------------------------
/src/chrome/README.md:
--------------------------------------------------------------------------------
1 | # chrome
2 |
3 | ## 参考
4 |
5 | [67 Weird Debugging Tricks Your Browser Doesn't Want You to Know | Alan Norbauer](https://alan.norbauer.com/articles/browser-debugging-tricks)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/chrome/mock/public/js/background.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/chrome/mock/public/js/background.js
--------------------------------------------------------------------------------
/src/chrome/mock/public/js/devtools.js:
--------------------------------------------------------------------------------
1 | chrome.devtools.panels.create(
2 | 'mock',
3 | 'icons/16-enabled.png',
4 | 'index.html', function(panel) {
5 | console.log('自定义面板创建成功!'); // 注意这个log一般看不到
6 | });
7 |
--------------------------------------------------------------------------------
/src/chrome/mock/public/js/options.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/chrome/mock/public/js/options.js
--------------------------------------------------------------------------------
/src/chrome/mock/public/js/panel.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/chrome/mock/public/js/panel.js
--------------------------------------------------------------------------------
/src/chrome/mock/src/const/index.ts:
--------------------------------------------------------------------------------
1 | export const STATUS = {
2 | enable: true,
3 | disable: false,
4 | };
5 |
6 | export const TYPE = {
7 | object: 'object',
8 | array: 'array',
9 | null: 'null',
10 | string: 'string',
11 | number: 'number',
12 | boolean: 'boolean',
13 | };
14 |
--------------------------------------------------------------------------------
/src/chrome/mock/src/main.ts:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue';
2 | import './style.less';
3 | import router from './router';
4 | import App from './App.vue';
5 | import { registryComponents } from './install-component';
6 |
7 | const app = createApp(App);
8 | app.use(router);
9 | registryComponents(app);
10 | app.mount('#app');
11 |
--------------------------------------------------------------------------------
/src/chrome/mock/src/utils/env.ts:
--------------------------------------------------------------------------------
1 | export const isBrowser = typeof navigator !== 'undefined';
2 | export const target: any = isBrowser
3 | ? window
4 | : typeof global !== 'undefined'
5 | ? global
6 | : {};
--------------------------------------------------------------------------------
/src/chrome/mock/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
3 | declare module '*.vue' {
4 | import type { DefineComponent } from 'vue'
5 | const component: DefineComponent<{}, {}, any>
6 | export default component
7 | }
8 |
9 |
--------------------------------------------------------------------------------
/src/chrome/mock/tsconfig.node.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "composite": true,
4 | "module": "ESNext",
5 | "moduleResolution": "Node",
6 | "allowSyntheticDefaultImports": true,
7 | "types": [
8 | "vite/client"
9 | ]
10 | },
11 | "include": ["vite.config.ts"]
12 | }
13 |
--------------------------------------------------------------------------------
/src/chrome/插件开发.md:
--------------------------------------------------------------------------------
1 | # 插件开发
2 |
3 | [chrome插件开发全攻略-通信](https://www.bookstack.cn/read/chrome-plugin-develop/spilt.2.spilt.7.8bdb1aac68bbdc44.md)
--------------------------------------------------------------------------------
/src/css-related/UFE00.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/css-related/UFE00.pdf
--------------------------------------------------------------------------------
/src/css-related/base64-正常匹配.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/css-related/base64-正常匹配.jpg
--------------------------------------------------------------------------------
/src/css-related/base64-补位.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/css-related/base64-补位.jpg
--------------------------------------------------------------------------------
/src/css-related/styled-component.md:
--------------------------------------------------------------------------------
1 | ## 参考
2 |
3 | [styled-component](https://styled-components.com/docs/basics#motivation)
4 |
5 |
--------------------------------------------------------------------------------
/src/css-related/层叠顺序.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/css-related/层叠顺序.png
--------------------------------------------------------------------------------
/src/cyclejs/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Cycle.js counter
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/dataforge/dataforge.js:
--------------------------------------------------------------------------------
1 | /**
2 | * dataforge
3 | *
4 | * The JavaScript data transformation and analysis toolkit inspired by Pandas and LINQ.
5 | *
6 | */
7 | const dataForge = require('data-forge');
8 |
9 | dataForge.readFile('./src/dataforge/test.json')
10 | .parseJSON()
11 | .then((res) => {
12 | console.log(res);
13 | });
14 |
--------------------------------------------------------------------------------
/src/dataforge/test.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "abc",
3 | "age": 13
4 | }
--------------------------------------------------------------------------------
/src/ddd/ddd模型+依赖倒置.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/ddd/ddd模型+依赖倒置.jpg
--------------------------------------------------------------------------------
/src/ddd/ddd项目中运用.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/ddd/ddd项目中运用.jpg
--------------------------------------------------------------------------------
/src/ddd/refactoring-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/ddd/refactoring-3.png
--------------------------------------------------------------------------------
/src/deeplearning/README.md:
--------------------------------------------------------------------------------
1 | # deeplearning
2 |
3 | ## 参考
4 |
5 | - https://www.zhihu.com/question/26006703
6 | - [PaddlePaddel-百度自研](https://github.com/PaddlePaddle/Paddle.js/blob/master/README_cn.md)
7 |
--------------------------------------------------------------------------------
/src/deeplearning/deeplearning.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/deeplearning/deeplearning.pdf
--------------------------------------------------------------------------------
/src/deno/puppeteer.js:
--------------------------------------------------------------------------------
1 | // https://github.com/lucacasonato/deno-puppeteer
2 | import puppeteer from "https://deno.land/x/puppeteer@5.5.1/mod.ts";
3 |
4 | const browser = await puppeteer.launch();
5 | const page = await browser.newPage();
6 | await page.goto("https://www.baidu.com");
7 | await page.screenshot({ path: "example.png" });
8 |
9 | await browser.close();
--------------------------------------------------------------------------------
/src/docker/overall.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/docker/overall.png
--------------------------------------------------------------------------------
/src/electron/README.md:
--------------------------------------------------------------------------------
1 | # electron
2 |
3 | ## nw.js
4 | 
5 |
6 | ---
7 |
8 | ## vscode
9 | 
10 |
--------------------------------------------------------------------------------
/src/electron/nw结构.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/electron/nw结构.jpeg
--------------------------------------------------------------------------------
/src/electron/vscode通讯机制.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/electron/vscode通讯机制.png
--------------------------------------------------------------------------------
/src/esbuild/test.js:
--------------------------------------------------------------------------------
1 | const result = require('esbuild').transformSync(`
2 | @Component({})
3 | class Aa extends Vue {
4 |
5 | }
6 | `, {
7 | loader: 'ts',
8 | });
9 |
10 | console.log(result);
11 |
--------------------------------------------------------------------------------
/src/esbuild/前端工程化.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/esbuild/前端工程化.jpeg
--------------------------------------------------------------------------------
/src/fe-interview/src/html头部.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/html头部.jpg
--------------------------------------------------------------------------------
/src/fe-interview/src/json-parse.js:
--------------------------------------------------------------------------------
1 | // 解法1 eval
2 | eval('(' + jsonstring + ')');
3 |
4 | // 解法2 new Function
5 | (new Function('return ' + jsonstring))();
6 |
7 | // 解法3 状态机
8 | // https://github.com/youngwind/blog/issues/115
--------------------------------------------------------------------------------
/src/fe-interview/src/mvp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/mvp.PNG
--------------------------------------------------------------------------------
/src/fe-interview/src/作用域链.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/作用域链.jpg
--------------------------------------------------------------------------------
/src/fe-interview/src/合成触发.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/合成触发.jpg
--------------------------------------------------------------------------------
/src/fe-interview/src/回流触发.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/回流触发.jpg
--------------------------------------------------------------------------------
/src/fe-interview/src/广度优先.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/广度优先.png
--------------------------------------------------------------------------------
/src/fe-interview/src/排序算法复杂度.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/排序算法复杂度.png
--------------------------------------------------------------------------------
/src/fe-interview/src/深度优先.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/深度优先.png
--------------------------------------------------------------------------------
/src/fe-interview/src/观察者和发布订阅模式.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/观察者和发布订阅模式.png
--------------------------------------------------------------------------------
/src/fe-interview/src/资源优先级.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/资源优先级.png
--------------------------------------------------------------------------------
/src/fe-interview/src/重绘触发.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/重绘触发.jpg
--------------------------------------------------------------------------------
/src/fe-interview/src/金额format.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 题目:
3 | *
4 | * 1234.12 -> 1,234.12
5 | *
6 | */
7 | function format(number) {
8 | return number.toString().replace(/(\d{1,2})(?=(\d{3})+(\.\d{1,2})?$)/g, '$1, ');
9 | }
--------------------------------------------------------------------------------
/src/fe-interview/src/页面请求流程.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fe-interview/src/页面请求流程.png
--------------------------------------------------------------------------------
/src/flutter/gpu-render.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/flutter/gpu-render.png
--------------------------------------------------------------------------------
/src/flutter/state.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/flutter/state.jpg
--------------------------------------------------------------------------------
/src/fp/mostly-adequate-guide.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/fp/mostly-adequate-guide.pdf
--------------------------------------------------------------------------------
/src/game/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "next/babel",
4 | "@zeit/next-typescript/babel"
5 | ]
6 | }
--------------------------------------------------------------------------------
/src/game/README.md:
--------------------------------------------------------------------------------
1 | ## 仿太污绘卷
2 |
3 | ## TODO
4 | - 人物创建
5 | - 大地图、区域地图
6 | - 人物功法
7 | - 遇敌战斗
8 | - 城镇发展
9 | - 人际关系
10 | - 人物历史
--------------------------------------------------------------------------------
/src/game/app/App.less:
--------------------------------------------------------------------------------
1 | .app {
2 | height: 100%;
3 | width: 100%;
4 | }
--------------------------------------------------------------------------------
/src/game/components/common/AbstractComponent/index.tsx:
--------------------------------------------------------------------------------
1 | import { Component } from 'react';
2 |
3 | export default interface AbstractComponent extends Component
{
4 | bindInstance(): void;
5 | }
6 |
--------------------------------------------------------------------------------
/src/game/components/common/Man/index.less:
--------------------------------------------------------------------------------
1 | .man {
2 | height: 100%;
3 | width: 300px;
4 | will-change: transform;
5 | transition: .5s transform ease-out;
6 | }
--------------------------------------------------------------------------------
/src/game/components/map/Map.less:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/components/map/Map.less
--------------------------------------------------------------------------------
/src/game/enum/index.ts:
--------------------------------------------------------------------------------
1 | export * from './common';
2 | export * from './starter';
--------------------------------------------------------------------------------
/src/game/enum/starter.ts:
--------------------------------------------------------------------------------
1 | export enum CreateStep {
2 | Person,
3 | System,
4 | Finish,
5 | };
6 |
7 | export enum SystemKeyEnum {
8 | LEVEL = 'level',
9 | WORLD = 'world',
10 | ENEMY = 'enemy',
11 | };
12 |
--------------------------------------------------------------------------------
/src/game/img/blade-man-blue-sec.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/img/blade-man-blue-sec.jpg
--------------------------------------------------------------------------------
/src/game/img/blade-man-blue.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/img/blade-man-blue.jpg
--------------------------------------------------------------------------------
/src/game/img/blade-man-static.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/img/blade-man-static.gif
--------------------------------------------------------------------------------
/src/game/img/blade-man.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/img/blade-man.jpg
--------------------------------------------------------------------------------
/src/game/img/run-man.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/img/run-man.gif
--------------------------------------------------------------------------------
/src/game/img/run-man.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/img/run-man.jpg
--------------------------------------------------------------------------------
/src/game/img/shuzhi.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/img/shuzhi.jpeg
--------------------------------------------------------------------------------
/src/game/models/index.ts:
--------------------------------------------------------------------------------
1 | import app from './app';
2 | import starter from './starter';
3 | import combat from './combat';
4 |
5 | export default {
6 | app,
7 | starter,
8 | combat,
9 | };
10 |
--------------------------------------------------------------------------------
/src/game/pages/index.less:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | padding: 0;
4 | font-family: sans-serif;
5 | }
--------------------------------------------------------------------------------
/src/game/pages/index.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Provider } from 'react-redux';
3 | import 'antd/dist/antd.css';
4 | import '../public/main.css';
5 |
6 | import './index.less';
7 | import App from '../app/App';
8 | import store from '../store';
9 |
10 | export default () => (
11 |
12 |
13 |
14 | );
15 |
--------------------------------------------------------------------------------
/src/game/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | plugins: {
3 | autoprefixer: {
4 | browsers: [
5 | 'Android >= 4.0',
6 | 'last 3 versions',
7 | 'iOS > 6',
8 | ],
9 | },
10 | },
11 | }
--------------------------------------------------------------------------------
/src/game/public/main.css:
--------------------------------------------------------------------------------
1 | #__next {
2 | height: 100%;
3 | width: 100%;
4 | }
--------------------------------------------------------------------------------
/src/game/store/index.ts:
--------------------------------------------------------------------------------
1 | import { init } from '@rematch/core';
2 | import models from '../models';
3 |
4 | const store = init({
5 | models,
6 | });
7 |
8 | export const { dispatch } = store;
9 |
10 | export default store;
11 |
--------------------------------------------------------------------------------
/src/game/types/app.ts:
--------------------------------------------------------------------------------
1 | import { Stage } from '../enum';
2 |
3 | export interface AppInterface {
4 | stage: Stage,
5 | }
6 |
7 | export type AppState = Partial<{
8 | show: boolean;
9 | }>;
10 |
11 | export type AppProps = Partial<{
12 | children?: React.ReactNode;
13 | dispatch?: Function|any;
14 | stage: Stage;
15 | }>;
16 |
17 |
--------------------------------------------------------------------------------
/src/game/types/index.ts:
--------------------------------------------------------------------------------
1 | export * from './common';
2 | export * from './app';
3 | export * from './starter';
4 | export * from './combat';
5 | export * from './test';
--------------------------------------------------------------------------------
/src/game/web/controller/index.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/web/controller/index.js
--------------------------------------------------------------------------------
/src/game/web/index.js:
--------------------------------------------------------------------------------
1 |
2 | module.exports = (res, path) => {
3 | res.writeHead(200, { 'Content-Type': 'text/json' });
4 | res.end(JSON.stringify({
5 | code: 1024,
6 | }));
7 | };
8 |
--------------------------------------------------------------------------------
/src/game/web/service/index.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/game/web/service/index.js
--------------------------------------------------------------------------------
/src/gitflow/git-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/gitflow/git-flow.png
--------------------------------------------------------------------------------
/src/gitflow/git-log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/gitflow/git-log.png
--------------------------------------------------------------------------------
/src/graphQL/README.md:
--------------------------------------------------------------------------------
1 | # graphql
2 |
3 | ## 参考
4 | - [react+graphql+mongodb](https://www.colabug.com/6355098.html)
5 |
6 | ## 本质
7 | 1. 类似sql,graphql提供一种数据操作语法
8 | 2. 无法直接与mongodb或者其他数据库的交互,需要预处理graphql语法 -> 数据库支持语法
9 |
--------------------------------------------------------------------------------
/src/html/test.css:
--------------------------------------------------------------------------------
1 | .aa {
2 | color: blue;
3 | }
--------------------------------------------------------------------------------
/src/html/test1.css:
--------------------------------------------------------------------------------
1 | .aa {
2 | color: red;
3 | }
--------------------------------------------------------------------------------
/src/html/test2.css:
--------------------------------------------------------------------------------
1 | .aa {
2 | color: yellow;
3 | }
--------------------------------------------------------------------------------
/src/http/10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/10.png
--------------------------------------------------------------------------------
/src/http/201208201734403507.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/201208201734403507.png
--------------------------------------------------------------------------------
/src/http/24.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/24.png
--------------------------------------------------------------------------------
/src/http/CDN.md:
--------------------------------------------------------------------------------
1 | # CDN-内容分发网络
2 |
3 | ## 参考
4 | - https://zhuanlan.zhihu.com/p/39028766
5 |
6 | ## 优势
7 | - 减轻源站(服务器)负载
8 | - 加速访问
9 | - 抗攻击
10 |
11 | ## 注意点
12 | - 缓存设置
13 | - nginx s-maxage(设置代理服务器的缓存时间)
14 | - 判断是否命中缓存
15 | - Hid -cach-Lookup
16 | -资源预热
17 | - 避免所有请求都打到原务器上
18 | - Vary
19 | - Range
--------------------------------------------------------------------------------
/src/http/OSI层次.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/OSI层次.jpg
--------------------------------------------------------------------------------
/src/http/TCP-IP协议层次.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/TCP-IP协议层次.jpg
--------------------------------------------------------------------------------
/src/http/TCP-IP协议模型.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/TCP-IP协议模型.png
--------------------------------------------------------------------------------
/src/http/backlog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/backlog.png
--------------------------------------------------------------------------------
/src/http/hash算法.js:
--------------------------------------------------------------------------------
1 | function hash(word) {
2 | var p = 31;
3 | var m = 1e9 + 9;
4 | var hash_value = 0;
5 | for(var i = 0; i < word.length; i++) {
6 | var letter = word[i];
7 | var charCode = letter.charCodeAt();
8 | hash_value = hash_value + (charCode * Math.pow(p, i))
9 | }
10 | return hash_value % m;
11 | }
--------------------------------------------------------------------------------
/src/http/http2对比.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/http2对比.png
--------------------------------------------------------------------------------
/src/http/http3对比.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/http3对比.png
--------------------------------------------------------------------------------
/src/http/https-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/https-2.jpg
--------------------------------------------------------------------------------
/src/http/https请求完整流程.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/https请求完整流程.jpg
--------------------------------------------------------------------------------
/src/http/http五大类知识.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/http五大类知识.png
--------------------------------------------------------------------------------
/src/http/rtt对比.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/rtt对比.png
--------------------------------------------------------------------------------
/src/http/ssl-tls.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/ssl-tls.jpg
--------------------------------------------------------------------------------
/src/http/stale-while-revalidate.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/stale-while-revalidate.jpg
--------------------------------------------------------------------------------
/src/http/tcp传输过程.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/tcp传输过程.jpg
--------------------------------------------------------------------------------
/src/http/tcp和http关系.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/tcp和http关系.jpg
--------------------------------------------------------------------------------
/src/http/tcp请求报文.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/tcp请求报文.png
--------------------------------------------------------------------------------
/src/http/tcp首部信息.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/tcp首部信息.png
--------------------------------------------------------------------------------
/src/http/udp首部信息.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/udp首部信息.png
--------------------------------------------------------------------------------
/src/http/websocket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/websocket.png
--------------------------------------------------------------------------------
/src/http/二进制分帧.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/二进制分帧.png
--------------------------------------------------------------------------------
/src/http/低延迟直播技术.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/低延迟直播技术.png
--------------------------------------------------------------------------------
/src/http/加密算法.md:
--------------------------------------------------------------------------------
1 | # 加密算法
2 |
3 | ## sha256
4 | [算法](https://qvault.io/2020/07/08/how-sha-2-works-step-by-step-sha-256/)
--------------------------------------------------------------------------------
/src/http/协议层次.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/协议层次.png
--------------------------------------------------------------------------------
/src/http/多路复用.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/多路复用.png
--------------------------------------------------------------------------------
/src/http/当前主流直播技术延迟.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/当前主流直播技术延迟.png
--------------------------------------------------------------------------------
/src/http/跨域.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/http/跨域.jpeg
--------------------------------------------------------------------------------
/src/immer/immer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/immer/immer.png
--------------------------------------------------------------------------------
/src/js&browser/2010-facebook-性能优化.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/2010-facebook-性能优化.pdf
--------------------------------------------------------------------------------
/src/js&browser/201208201734418392.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/201208201734418392.png
--------------------------------------------------------------------------------
/src/js&browser/2018性能优化.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/2018性能优化.png
--------------------------------------------------------------------------------
/src/js&browser/2954145-5bb92d1fbdb9df41.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/2954145-5bb92d1fbdb9df41.png
--------------------------------------------------------------------------------
/src/js&browser/41808298-e8cce80c-770d-11e8-994b-1d6f30e2bfe3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/41808298-e8cce80c-770d-11e8-994b-1d6f30e2bfe3.png
--------------------------------------------------------------------------------
/src/js&browser/41808308-0446ba5e-770e-11e8-895a-e2ed7231869d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/41808308-0446ba5e-770e-11e8-895a-e2ed7231869d.png
--------------------------------------------------------------------------------
/src/js&browser/41808322-2d1566ec-770e-11e8-98f7-ca87edeaa998.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/41808322-2d1566ec-770e-11e8-98f7-ca87edeaa998.png
--------------------------------------------------------------------------------
/src/js&browser/CSSOM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/CSSOM.png
--------------------------------------------------------------------------------
/src/js&browser/DNS查找过程.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/DNS查找过程.png
--------------------------------------------------------------------------------
/src/js&browser/DNS迭代查找.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/DNS迭代查找.png
--------------------------------------------------------------------------------
/src/js&browser/DNS递归查找.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/DNS递归查找.png
--------------------------------------------------------------------------------
/src/js&browser/Mark-Compact.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/Mark-Compact.png
--------------------------------------------------------------------------------
/src/js&browser/Mark-Sweep.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/Mark-Sweep.png
--------------------------------------------------------------------------------
/src/js&browser/await.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/await.jpg
--------------------------------------------------------------------------------
/src/js&browser/cachcontrol.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/cachcontrol.jpg
--------------------------------------------------------------------------------
/src/js&browser/chrome浏览器架构.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/chrome浏览器架构.jpg
--------------------------------------------------------------------------------
/src/js&browser/chrome渲染线程.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/chrome渲染线程.png
--------------------------------------------------------------------------------
/src/js&browser/chromium渲染过程.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/chromium渲染过程.jpeg
--------------------------------------------------------------------------------
/src/js&browser/deepCopy.md:
--------------------------------------------------------------------------------
1 | ## 参考
2 | - https://yanhaijing.com/javascript/2018/10/10/clone-deep/
3 |
4 | ## 方式
5 | - clone:创建新对象 + 递归
6 | - cloneJSON:JSON.parse(JSON.stringify(object))
7 | - cloneLoop:对象转为loopList,遍历拷贝
8 | -cloneForce:对象转为loopList,拷贝前检测是否已拷贝过,保持引用
--------------------------------------------------------------------------------
/src/js&browser/defer-async.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/defer-async.jpeg
--------------------------------------------------------------------------------
/src/js&browser/dns-树形结构.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/dns-树形结构.jpg
--------------------------------------------------------------------------------
/src/js&browser/event-table.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/event-table.png
--------------------------------------------------------------------------------
/src/js&browser/eventLoop简易示图.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/eventLoop简易示图.png
--------------------------------------------------------------------------------
/src/js&browser/event_loop.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/event_loop.jpeg
--------------------------------------------------------------------------------
/src/js&browser/gecko渲染过程.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/gecko渲染过程.jpg
--------------------------------------------------------------------------------
/src/js&browser/gib68xrvj59.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/gib68xrvj59.jpeg
--------------------------------------------------------------------------------
/src/js&browser/huffman编码.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/huffman编码.png
--------------------------------------------------------------------------------
/src/js&browser/iframe.md:
--------------------------------------------------------------------------------
1 | # iframe
2 |
3 | [iframe属性配置器](https://iframegenerator.top/)
4 |
--------------------------------------------------------------------------------
/src/js&browser/k和p.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/k和p.jpg
--------------------------------------------------------------------------------
/src/js&browser/libuv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/libuv.png
--------------------------------------------------------------------------------
/src/js&browser/life-requestIdle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/life-requestIdle.png
--------------------------------------------------------------------------------
/src/js&browser/node环境-事件循环.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/node环境-事件循环.png
--------------------------------------------------------------------------------
/src/js&browser/performance.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/performance.jpeg
--------------------------------------------------------------------------------
/src/js&browser/render-tree.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/render-tree.jpg
--------------------------------------------------------------------------------
/src/js&browser/requestIdleCallback.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/requestIdleCallback.png
--------------------------------------------------------------------------------
/src/js&browser/samesite.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/samesite.jpg
--------------------------------------------------------------------------------
/src/js&browser/setTimeout回调触发前.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/setTimeout回调触发前.png
--------------------------------------------------------------------------------
/src/js&browser/setTimeout回调触发后.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/setTimeout回调触发后.png
--------------------------------------------------------------------------------
/src/js&browser/spa架构.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/spa架构.png
--------------------------------------------------------------------------------
/src/js&browser/task_eventloop_v8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/task_eventloop_v8.jpg
--------------------------------------------------------------------------------
/src/js&browser/webcontainer.md:
--------------------------------------------------------------------------------
1 | # 浏览器node环境
2 |
3 | ## 参考
4 |
5 | - [webcontainer](https://webcontainers.io/)
6 | - [nodebox](https://codesandbox.io/blog/announcing-sandpack-2)
--------------------------------------------------------------------------------
/src/js&browser/webkit渲染过程.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/webkit渲染过程.jpeg
--------------------------------------------------------------------------------
/src/js&browser/事件触发.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/事件触发.gif
--------------------------------------------------------------------------------
/src/js&browser/二进制和图片间的转换关系.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/二进制和图片间的转换关系.png
--------------------------------------------------------------------------------
/src/js&browser/任务队列.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/任务队列.png
--------------------------------------------------------------------------------
/src/js&browser/前端-各种渲染方式对比.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/前端-各种渲染方式对比.jpg
--------------------------------------------------------------------------------
/src/js&browser/前端体系.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/前端体系.jpeg
--------------------------------------------------------------------------------
/src/js&browser/前端进程.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/前端进程.jpeg
--------------------------------------------------------------------------------
/src/js&browser/单次请求次序.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/单次请求次序.jpeg
--------------------------------------------------------------------------------
/src/js&browser/响应报文.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/响应报文.jpg
--------------------------------------------------------------------------------
/src/js&browser/图片优化.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/图片优化.jpeg
--------------------------------------------------------------------------------
/src/js&browser/图片格式区别.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/图片格式区别.jpeg
--------------------------------------------------------------------------------
/src/js&browser/图片格式选择.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/图片格式选择.jpeg
--------------------------------------------------------------------------------
/src/js&browser/图片模糊.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/图片模糊.jpg
--------------------------------------------------------------------------------
/src/js&browser/安卓屏幕尺寸.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/安卓屏幕尺寸.png
--------------------------------------------------------------------------------
/src/js&browser/小程序vsPWA.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/小程序vsPWA.jpg
--------------------------------------------------------------------------------
/src/js&browser/应用层封装.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/应用层封装.jpg
--------------------------------------------------------------------------------
/src/js&browser/性能优化.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/性能优化.jpeg
--------------------------------------------------------------------------------
/src/js&browser/性能优化2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/性能优化2.png
--------------------------------------------------------------------------------
/src/js&browser/性能优化2024.md:
--------------------------------------------------------------------------------
1 | ## 缓存
2 | - indexDB
3 | - [File System Access API](https://developer.chrome.com/docs/capabilities/web-apis/file-system-access?hl=zh-tw)
--------------------------------------------------------------------------------
/src/js&browser/搜索引擎.md:
--------------------------------------------------------------------------------
1 | # 搜索引擎
2 |
3 | ## 参考
4 | - [搜索引擎原理](https://zhuanlan.zhihu.com/p/139041529)
5 |
6 | ---
7 |
8 | ## 简易原理
9 |
10 | ### 爬取
11 |
12 | **倒排**
13 |
14 | 1. 根据关键词,找出其出现的`网站`、`频率`、`位置`
15 | 2. 关键词转哈希表存储,重复的 key 做冲突表处理
16 |
17 | ### 查找
18 | 1. 搜索词转哈希
19 | 2. 从哈希表映射到冲突表,继续搜索
20 | 3. 从冲突表找到`网站`、`频率`、`位置`
21 | 4. 根据热度、广告等各种权重,列出搜索结果
22 |
--------------------------------------------------------------------------------
/src/js&browser/数值存储.md:
--------------------------------------------------------------------------------
1 | # 数值存储
2 |
3 | ## 概念
4 | - 所有数字以64位浮点数/整数存储
5 | - 组成
6 | - 第1位:符号位,0 - 负,1 - 正
7 | - 第2~12位:指数位,
8 | - 第13~64位:有效数字(小数位)
9 | - 边界
10 | - 2^53 - 1
11 |
12 | ## 例子
13 | - 0.1 + 0.2 !== 0.3
14 | - (0.1)10 => (00011001100110011001(1001)...)2
15 | - (0.2)10 => (00110011001100110011(0011)...)2
--------------------------------------------------------------------------------
/src/js&browser/断点调试.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/断点调试.png
--------------------------------------------------------------------------------
/src/js&browser/新生代垃圾回收.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/新生代垃圾回收.png
--------------------------------------------------------------------------------
/src/js&browser/根域服务器.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/根域服务器.jpg
--------------------------------------------------------------------------------
/src/js&browser/根据token生成css树的过程.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/根据token生成css树的过程.jpg
--------------------------------------------------------------------------------
/src/js&browser/根据token生成节点树的过程.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/根据token生成节点树的过程.jpg
--------------------------------------------------------------------------------
/src/js&browser/浏览器API.md:
--------------------------------------------------------------------------------
1 | # 浏览器API
2 |
3 |
4 |
5 | - [多屏api](https://www.w3.org/TR/window-placement/)
6 | - [元素全屏-requestFullscreen](https://developer.mozilla.org/zh-CN/docs/Web/API/Element/requestFullscreen)
7 |
8 |
--------------------------------------------------------------------------------
/src/js&browser/浏览器和node的eventLoop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/浏览器和node的eventLoop.png
--------------------------------------------------------------------------------
/src/js&browser/浏览器架构.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/浏览器架构.jpg
--------------------------------------------------------------------------------
/src/js&browser/浏览器缓存与机制.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/浏览器缓存与机制.jpeg
--------------------------------------------------------------------------------
/src/js&browser/移动端dns解析.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/移动端dns解析.png
--------------------------------------------------------------------------------
/src/js&browser/继承.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/继承.png
--------------------------------------------------------------------------------
/src/js&browser/缓存字段.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/缓存字段.jpg
--------------------------------------------------------------------------------
/src/js&browser/视频大小.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/视频大小.png
--------------------------------------------------------------------------------
/src/js&browser/视频编码.md:
--------------------------------------------------------------------------------
1 | # 视频编码
2 |
3 |
4 |
5 | ## 基础概念
6 |
7 | ### 视频大小和分辨率关系
8 |
9 | 
10 |
11 |
12 |
13 | ### 视频压缩
14 |
15 | - 跳帧
16 | - 划块
17 | - 抽色
18 |
19 | **跳帧**
20 |
21 | > 相似画面仅保留一帧,后期通过预测还原。
22 |
23 | **划块**
24 |
25 | > 将多个颜色相同的小色块当做一个大色块处理。
26 |
27 | **抽色**
28 |
29 | > 相近的颜色“偷”换成一种颜色。
30 |
31 |
32 |
33 |
34 |
35 | ---
--------------------------------------------------------------------------------
/src/js&browser/计时器原理.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/计时器原理.png
--------------------------------------------------------------------------------
/src/js&browser/请求报文.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/请求报文.jpg
--------------------------------------------------------------------------------
/src/js&browser/请求缓存304判断顺序.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/请求缓存304判断顺序.jpeg
--------------------------------------------------------------------------------
/src/js&browser/资源优先级.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/资源优先级.png
--------------------------------------------------------------------------------
/src/js&browser/重绘和重排.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/重绘和重排.jpg
--------------------------------------------------------------------------------
/src/js&browser/页面可视状态.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/页面可视状态.jpg
--------------------------------------------------------------------------------
/src/js&browser/页面渲染.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/js&browser/页面渲染.jpg
--------------------------------------------------------------------------------
/src/js&browser/鸿蒙.md:
--------------------------------------------------------------------------------
1 | # 鸿蒙
2 |
3 | ## 参考
4 | - [鸿蒙rn的适配](https://mp.weixin.qq.com/s/WdutXVWN0wgGimq8hkLXjw)
--------------------------------------------------------------------------------
/src/keep/上斜俯卧撑.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/上斜俯卧撑.gif
--------------------------------------------------------------------------------
/src/keep/上斜杠铃卧推.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/上斜杠铃卧推.gif
--------------------------------------------------------------------------------
/src/keep/仰卧哑铃交替弯举.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/仰卧哑铃交替弯举.gif
--------------------------------------------------------------------------------
/src/keep/仰卧曲臂上拉.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/仰卧曲臂上拉.jpeg
--------------------------------------------------------------------------------
/src/keep/俯身双臂划船.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/俯身双臂划船.jpg
--------------------------------------------------------------------------------
/src/keep/俯身哑铃划船.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/俯身哑铃划船.jpeg
--------------------------------------------------------------------------------
/src/keep/俯身哑铃臂屈伸.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/俯身哑铃臂屈伸.jpeg
--------------------------------------------------------------------------------
/src/keep/俯身杠铃划船.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/俯身杠铃划船.jpeg
--------------------------------------------------------------------------------
/src/keep/单臂哑铃划船.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/单臂哑铃划船.jpeg
--------------------------------------------------------------------------------
/src/keep/反握卧推.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/反握卧推.jpeg
--------------------------------------------------------------------------------
/src/keep/哑铃上斜卧推.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/哑铃上斜卧推.jpg
--------------------------------------------------------------------------------
/src/keep/哑铃侧平举.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/哑铃侧平举.gif
--------------------------------------------------------------------------------
/src/keep/哑铃俯身飞鸟.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/哑铃俯身飞鸟.gif
--------------------------------------------------------------------------------
/src/keep/哑铃前平举.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/哑铃前平举.gif
--------------------------------------------------------------------------------
/src/keep/哑铃平板卧推.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/哑铃平板卧推.jpg
--------------------------------------------------------------------------------
/src/keep/哑铃硬拉.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/哑铃硬拉.jpg
--------------------------------------------------------------------------------
/src/keep/哑铃箭步蹲.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/哑铃箭步蹲.gif
--------------------------------------------------------------------------------
/src/keep/哑铃集中弯举.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/哑铃集中弯举.gif
--------------------------------------------------------------------------------
/src/keep/坐姿哑铃推举.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/坐姿哑铃推举.gif
--------------------------------------------------------------------------------
/src/keep/坐姿杠铃颈前推举.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/坐姿杠铃颈前推举.gif
--------------------------------------------------------------------------------
/src/keep/坐姿颈后哑铃臂屈伸.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/坐姿颈后哑铃臂屈伸.jpeg
--------------------------------------------------------------------------------
/src/keep/平板哑铃飞鸟.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/平板哑铃飞鸟.gif
--------------------------------------------------------------------------------
/src/keep/斜板额前弯举.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/斜板额前弯举.jpeg
--------------------------------------------------------------------------------
/src/keep/杠铃硬拉.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/杠铃硬拉.jpg
--------------------------------------------------------------------------------
/src/keep/杠铃箭步蹲.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/杠铃箭步蹲.gif
--------------------------------------------------------------------------------
/src/keep/板凳撑.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/板凳撑.jpeg
--------------------------------------------------------------------------------
/src/keep/牧师凳哑铃弯举.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/牧师凳哑铃弯举.jpeg
--------------------------------------------------------------------------------
/src/keep/站姿锤式哑铃弯举.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/站姿锤式哑铃弯举.jpeg
--------------------------------------------------------------------------------
/src/keep/站姿颈后哑铃臂屈伸.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/站姿颈后哑铃臂屈伸.jpeg
--------------------------------------------------------------------------------
/src/keep/胸肌臂屈伸.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/胸肌臂屈伸.jpg
--------------------------------------------------------------------------------
/src/keep/躺姿额头哑铃臂屈伸.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/keep/躺姿额头哑铃臂屈伸.jpeg
--------------------------------------------------------------------------------
/src/koa/.eslintignore:
--------------------------------------------------------------------------------
1 | dist/*.js
2 | config/*.js
3 |
--------------------------------------------------------------------------------
/src/koa/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules/
2 |
--------------------------------------------------------------------------------
/src/koa/README.md:
--------------------------------------------------------------------------------
1 | ## 参考
2 | - koa从头实现:https://mp.weixin.qq.com/s/DHHu-lUOOmLYw57H05LaBg
3 | - [webpack4+koa2+ejs](https://github.com/arnoldczhang/multi_page_app_template.git)
4 | - [从零开始搭建koa基础框架](https://juejin.im/post/5cebea5e5188252dc544ed00?utm_medium=hao.caibaojian.com&utm_source=hao.caibaojian.com)
--------------------------------------------------------------------------------
/src/koa/config/constant.d.ts:
--------------------------------------------------------------------------------
1 | declare enum CODE {
2 | SUCCESS = 0,
3 | FAIL = 1,
4 | NOLOGIN = 2,
5 | }
6 | declare const LEANCLOUD: {
7 | appId: string;
8 | appKey: string;
9 | };
10 | declare const MSG: {
11 | ACTFAIL: string;
12 | };
13 | declare function FUNC(value: T): T;
14 | export { CODE, MSG, LEANCLOUD, FUNC };
15 |
--------------------------------------------------------------------------------
/src/koa/controller/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const _default: {
2 | [x: string]: any;
3 | };
4 | export default _default;
5 |
--------------------------------------------------------------------------------
/src/koa/controller/index.ts:
--------------------------------------------------------------------------------
1 | import { user } from './user';
2 |
3 | export default {
4 | ...user,
5 | }
6 |
--------------------------------------------------------------------------------
/src/koa/controller/user.d.ts:
--------------------------------------------------------------------------------
1 | import { AssetOptions } from '../interface';
2 | export declare const user: AssetOptions;
3 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/api.d.ts:
--------------------------------------------------------------------------------
1 | export declare function fetchCircuits(): Promise;
2 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/api.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 | const fetch = require("isomorphic-fetch");
4 | function fetchCircuits() {
5 | return fetch("https://api.github.com/repos/jasonboy/wechat-jssdk/branches")
6 | .then(res => res.json())
7 | .then(res => res);
8 | }
9 | exports.fetchCircuits = fetchCircuits;
10 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/api.ts:
--------------------------------------------------------------------------------
1 | import * as fetch from "isomorphic-fetch";
2 |
3 | export function fetchCircuits() {
4 | return fetch( "https://api.github.com/repos/jasonboy/wechat-jssdk/branches" )
5 | .then(res => res.json())
6 | .then(res => res);
7 | }
8 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/client.d.ts:
--------------------------------------------------------------------------------
1 | export {};
2 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/components/About.d.ts:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import { BaseProps } from "../types";
3 | declare const About: React.FC;
4 | export default About;
5 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/components/About.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 | const React = require("react");
4 | const About = () => React.createElement("h2", null, "This is the about page");
5 | exports.default = About;
6 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/components/About.tsx:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import { BaseProps } from "../types";
3 |
4 | const About: React.FC = () => (
5 | This is the about page
6 | );
7 |
8 | export default About;
9 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/components/Contact.d.ts:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import { BaseProps } from "../types";
3 | declare const Contact: React.FC;
4 | export default Contact;
5 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/components/Header.d.ts:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | interface HelloProps {
3 | loggedIn: boolean;
4 | }
5 | declare const _default: import("react-redux").ConnectedComponentClass, Pick>;
6 | export default _default;
7 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/components/Layout.d.ts:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import { BaseState, BaseProps } from "../types";
3 | declare class Layout extends React.Component {
4 | constructor(props?: {});
5 | render(): JSX.Element;
6 | }
7 | export default Layout;
8 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/components/Secret.d.ts:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import { BaseProps } from "../types";
3 | declare const Secret: React.FC;
4 | export default Secret;
5 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/components/Secret.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 | const React = require("react");
4 | const Secret = () => React.createElement("h2", null, "This is the secret page");
5 | exports.default = Secret;
6 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/components/Secret.tsx:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import { BaseProps } from "../types";
3 |
4 | const Secret: React.FC = () => (
5 | This is the secret page
6 | );
7 |
8 | export default Secret;
9 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/render-dom.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import { IncomingMessage } from "http";
3 | import { Store } from "redux";
4 | declare const getRenderDom: (context: any, req: IncomingMessage, store: Store) => string;
5 | export default getRenderDom;
6 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/routes.d.ts:
--------------------------------------------------------------------------------
1 | import { CO } from "./types";
2 | declare const routes: Array;
3 | export default routes;
4 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/server.d.ts:
--------------------------------------------------------------------------------
1 | export {};
2 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/types/common.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/types/index.d.ts:
--------------------------------------------------------------------------------
1 | export * from './common';
2 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/types/index.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/types/index.ts:
--------------------------------------------------------------------------------
1 | export * from './common';
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/types/koa-webpack-dev-middleware.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'koa-webpack-dev-middleware';
2 |
3 | declare module 'koa-webpack-hot-middleware';
4 |
5 | declare module 'write-file-webpack-plugin';
6 |
7 | declare module 'clean-webpack-plugin';
8 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/src/utils.d.ts:
--------------------------------------------------------------------------------
1 | import { CO } from "./types";
2 | export declare function htmlTemplate(reactDom: string, reduxState: CO, helmetData: CO): string;
3 |
--------------------------------------------------------------------------------
/src/koa/example/koa-ssr/tslint.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "tslint:latest",
3 | "rules": {
4 | "ban-comma-operator": false,
5 | "no-empty": [true, "allow-empty-catch"],
6 | "no-import-side-effect": false,
7 | "no-var-keyword": false,
8 | "no-var-requires": false,
9 | "prefer-conditional-expression": false
10 | }
11 | }
--------------------------------------------------------------------------------
/src/koa/public/demo.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | test
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/koa/public/images/bk3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/koa/public/images/bk3.png
--------------------------------------------------------------------------------
/src/koa/router.d.ts:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/koa/router.d.ts
--------------------------------------------------------------------------------
/src/koa/server.d.ts:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/koa/server.d.ts
--------------------------------------------------------------------------------
/src/koa/service/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const _default: {
2 | [x: string]: any;
3 | };
4 | export default _default;
5 |
--------------------------------------------------------------------------------
/src/koa/service/index.ts:
--------------------------------------------------------------------------------
1 | import { user } from './user';
2 |
3 | export default {
4 | ...user,
5 | }
6 |
--------------------------------------------------------------------------------
/src/koa/service/user.d.ts:
--------------------------------------------------------------------------------
1 | import 'leancloud-realtime';
2 | import { AssetOptions } from '../interface';
3 | export declare const user: AssetOptions;
4 |
--------------------------------------------------------------------------------
/src/koa/tslint.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "tslint:latest",
3 | "rules": {
4 | "ban-comma-operator": false,
5 | "no-empty": [true, "allow-empty-catch"],
6 | "no-import-side-effect": false,
7 | "no-var-keyword": false,
8 | "no-var-requires": false,
9 | "prefer-conditional-expression": false
10 | }
11 | }
--------------------------------------------------------------------------------
/src/koa/utils/response.d.ts:
--------------------------------------------------------------------------------
1 | import { Response } from '../interface';
2 | export declare const response: Response;
3 |
--------------------------------------------------------------------------------
/src/koa/utils/response.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 | exports.response = {
4 | code: 0,
5 | subcode: 0,
6 | data: {},
7 | message: '',
8 | errorMessage: '',
9 | };
10 |
--------------------------------------------------------------------------------
/src/koa/utils/response.ts:
--------------------------------------------------------------------------------
1 | import {
2 | Response,
3 | } from '../interface';
4 |
5 | export const response: Response = {
6 | code: 0,
7 | subcode: 0,
8 | data: {},
9 | message: '',
10 | errorMessage: '',
11 | };
12 |
--------------------------------------------------------------------------------
/src/less/README.md:
--------------------------------------------------------------------------------
1 | # less
2 |
3 | ## node使用
4 | 详见[postcss原理](../postcss/postcss.js)
5 |
6 | ## 一些用法
7 |
8 | ### css变量替换
9 |
10 | ```less
11 | :root {
12 | --deep-color: #252626;
13 | }
14 |
15 | # 外部用这个变量
16 | @text-deep-color:var(--deep-color);
17 | ```
18 |
19 |
20 |
21 | ## 坑
22 | [calc计算错误](https://blog.csdn.net/u011628981/article/details/80521602)
23 |
--------------------------------------------------------------------------------
/src/lighthouse/config引用关系.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/lighthouse/config引用关系.png
--------------------------------------------------------------------------------
/src/lighthouse/example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/lighthouse/example.png
--------------------------------------------------------------------------------
/src/lighthouse/lang-data/README.md:
--------------------------------------------------------------------------------
1 | # 训练模型
2 | 去[这里](https://github.com/naptha/tessdata)下载
--------------------------------------------------------------------------------
/src/lighthouse/lighthouse架构.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/lighthouse/lighthouse架构.jpeg
--------------------------------------------------------------------------------
/src/lighthouse/plugins/lighthouse-plugin-arnold-diy/.eslintignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 | src/components/npm
3 |
--------------------------------------------------------------------------------
/src/lighthouse/plugins/lighthouse-plugin-arnold-diy/.gitignore:
--------------------------------------------------------------------------------
1 | .idea/
2 | .DS_STORE
3 | /dist
4 | node_modules/
5 | npm-debug.log
6 | .vscode/
7 | mock/data/
8 | coverage/
9 | *.iml
10 | package-lock.json
11 |
--------------------------------------------------------------------------------
/src/lighthouse/plugins/lighthouse-plugin-arnold-diy/.npmignore:
--------------------------------------------------------------------------------
1 | .babelrc
2 | .eslintignore
3 | .eslintrc
4 | gulpfile.js
5 | webpack.config.js
6 | commitlint.config.js
7 | docs
8 | docs.yml
9 | src
10 |
--------------------------------------------------------------------------------
/src/lighthouse/plugins/lighthouse-plugin-arnold-diy/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Change Log
2 |
3 | All notable changes to this project will be documented in this file.
4 | See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5 |
6 |
7 |
8 | **Note:** git init
9 |
--------------------------------------------------------------------------------
/src/lighthouse/plugins/lighthouse-plugin-arnold-diy/README.md:
--------------------------------------------------------------------------------
1 | # lighthouse-plugin-arnold-diy
2 |
3 | ## 介绍
4 |
5 | ## 安装
6 |
7 | ## 使用说明
8 |
9 | ## 示例
10 |
11 | ## 未来规划
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/lighthouse/plugins/lighthouse-plugin-arnold-diy/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "lighthouse-plugin-arnold-diy",
3 | "main": "plugin.js",
4 | "peerDependencies": {
5 | "lighthouse": "^5.6.0"
6 | },
7 | "devDependencies": {
8 | "lighthouse": "^5.6.0"
9 | }
10 | }
--------------------------------------------------------------------------------
/src/lighthouse/plugins/lighthouse-plugin-demo/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "lighthouse-plugin-demo",
3 | "main": "plugin.js",
4 | "peerDependencies": {
5 | "lighthouse": "^5.6.0"
6 | },
7 | "devDependencies": {
8 | "lighthouse": "^5.6.0"
9 | }
10 | }
--------------------------------------------------------------------------------
/src/lighthouse/plugins/lighthouse-plugin-demo/plugin.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/lighthouse/plugins/lighthouse-plugin-demo/plugin.js
--------------------------------------------------------------------------------
/src/lighthouse/plugins/lighthouse-plugin-demo/src/audits/demo-audit.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/lighthouse/plugins/lighthouse-plugin-demo/src/audits/demo-audit.js
--------------------------------------------------------------------------------
/src/linux-server/shell.md:
--------------------------------------------------------------------------------
1 | # shell
2 |
3 | ## 常用命令
4 |
5 | ### 批量写入多个文件
6 | ```sh
7 | for file in $(find . -name "*.customfile")
8 | do
9 | echo "xxx" > $file
10 | done
11 | ```
--------------------------------------------------------------------------------
/src/linux-server/常用命令.md:
--------------------------------------------------------------------------------
1 | # 常用命令
2 |
3 | ## xx
4 | - 查看端口占用: lsof -i:80
5 | - 查看文件中某行到某行:sed -n '5,10p' filename
6 | - 查看进程详情:ps -f -C 进程名字
7 | - 删进程:kill -s 9 pid
8 | - 实时查看某个文件:tail -f 文件路径
9 | - 查看内存使用情况:top
10 | - 删除.DS_store:find /Users/路径 ".DS_Store" -type f -delete
11 |
12 |
--------------------------------------------------------------------------------
/src/lowcode/README.md:
--------------------------------------------------------------------------------
1 | # lowcode
2 |
3 | ## 参考
4 |
5 | - [bubble.io](https://bubble.io/)
--------------------------------------------------------------------------------
/src/lynt/lynt.js:
--------------------------------------------------------------------------------
1 | /**
2 | * lynt
3 | *
4 | * zero config lint
5 | *
6 | * https://github.com/saadq/lynt
7 | *
8 | */
9 | const test = 'hello world';
10 | console.log(test);
--------------------------------------------------------------------------------
/src/markdown/markdown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/markdown/markdown.png
--------------------------------------------------------------------------------
/src/markdown/test.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | index
4 |
5 |
6 |
7 |
8 |
11 |
12 |
--------------------------------------------------------------------------------
/src/microservice/微前端.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/microservice/微前端.png
--------------------------------------------------------------------------------
/src/miniprogram/image/index.js:
--------------------------------------------------------------------------------
1 | const {
2 | compileStart,
3 | compileImageFiles,
4 | compileFinish,
5 | } = require('../build');
6 |
7 | const compileImage = async () => {
8 | compileStart();
9 | await compileImageFiles();
10 | compileFinish();
11 | };
12 | compileImage();
13 |
--------------------------------------------------------------------------------
/src/miniprogram/js/index.js:
--------------------------------------------------------------------------------
1 | const {
2 | compileStart,
3 | compileJsFiles,
4 | compileFinish,
5 | } = require('../build');
6 |
7 | compileStart();
8 | compileJsFiles();
9 | compileFinish();
10 |
--------------------------------------------------------------------------------
/src/miniprogram/json/index.js:
--------------------------------------------------------------------------------
1 | const {
2 | compileStart,
3 | compileJsonFiles,
4 | compileFinish,
5 | } = require('../build');
6 |
7 | compileStart();
8 | compileJsonFiles();
9 | compileFinish();
10 |
--------------------------------------------------------------------------------
/src/miniprogram/pension/README.md:
--------------------------------------------------------------------------------
1 | # 云开发 quickstart
2 |
3 | 这是云开发的快速启动指引,其中演示了如何上手使用云开发的三大基础能力:
4 |
5 | - 数据库:一个既可在小程序前端操作,也能在云函数中读写的 JSON 文档型数据库
6 | - 文件存储:在小程序前端直接上传/下载云端文件,在云开发控制台可视化管理
7 | - 云函数:在云端运行的代码,微信私有协议天然鉴权,开发者只需编写业务逻辑代码
8 |
9 | ## 参考文档
10 |
11 | - [云开发文档](https://developers.weixin.qq.com/miniprogram/dev/wxcloud/basis/getting-started.html)
12 |
13 |
--------------------------------------------------------------------------------
/src/miniprogram/pension/cloudfunctions/service/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "service",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "dependencies": {
12 | "wx-server-sdk": "^0.5.0"
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/app.wxss:
--------------------------------------------------------------------------------
1 | /**app.wxss**/
2 | .container {
3 | box-sizing: border-box;
4 | }
5 |
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/images/oldman.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/miniprogram/pension/miniprogram/images/oldman.jpg
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/images/qrcode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/miniprogram/pension/miniprogram/images/qrcode.png
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/pages/index/index.json:
--------------------------------------------------------------------------------
1 | {
2 | "usingComponents": {}
3 | }
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/pages/question/question.json:
--------------------------------------------------------------------------------
1 | {
2 | "usingComponents": {}
3 | }
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/pages/question/question.wxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/pages/question/question.wxss:
--------------------------------------------------------------------------------
1 | /* miniprogram/pages/question/quesiton.wxss */
2 | .img {
3 | height: 100vh;
4 | width: 100vw;
5 | }
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/pages/result/result.json:
--------------------------------------------------------------------------------
1 | {
2 | "usingComponents": {}
3 | }
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/pages/web-view/web-view.json:
--------------------------------------------------------------------------------
1 | {
2 | "usingComponents": {}
3 | }
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/pages/web-view/web-view.wxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/src/miniprogram/pension/miniprogram/pages/web-view/web-view.wxss:
--------------------------------------------------------------------------------
1 | /* miniprogram/pages/web-view.wxss */
--------------------------------------------------------------------------------
/src/miniprogram/preParser/README.md:
--------------------------------------------------------------------------------
1 | # 小程序代码预处理
2 |
3 | ## 功能
4 | - 拦截全局my
5 | - 拦截this(TODO)
6 | - webpack压缩
7 | - 未完待续...
8 |
--------------------------------------------------------------------------------
/src/miniprogram/preParser/parser/wx.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/miniprogram/preParser/parser/wx.js
--------------------------------------------------------------------------------
/src/miniprogram/preParser/reg.js:
--------------------------------------------------------------------------------
1 | const webpackCommentRE = /\/\*{3}\/\s+("[^"]+"):\s+\/\*\![\*\\\/\!\s\w\.\?\=\(\)\$@_\-]+\*\/\s+\/\*\!\s[^*]+\s\*\/\s+\/\*{3}\/\s+/g;
2 |
3 | const myRE = /(?:_|)my(?:\d+|)/;
4 |
5 | exports.webpackCommentRE = webpackCommentRE;
6 |
7 | exports.myRE = myRE;
8 |
--------------------------------------------------------------------------------
/src/miniprogram/wxml/index.js:
--------------------------------------------------------------------------------
1 | const {
2 | compileStart,
3 | compileWxmlFiles,
4 | compileFinish,
5 | } = require('../build');
6 |
7 | compileStart();
8 | compileWxmlFiles();
9 | compileFinish();
10 |
--------------------------------------------------------------------------------
/src/miniprogram/wxss/index.js:
--------------------------------------------------------------------------------
1 | const {
2 | compileStart,
3 | compileImageFiles,
4 | compileWxssFiles,
5 | compileFinish,
6 | } = require('../build');
7 |
8 | const compileWxss = async () => {
9 | compileStart();
10 | await compileImageFiles();
11 | compileWxssFiles();
12 | compileFinish();
13 | };
14 | compileWxss();
--------------------------------------------------------------------------------
/src/miniprogram/原webview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/miniprogram/原webview.png
--------------------------------------------------------------------------------
/src/miniprogram/双线程.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/miniprogram/双线程.png
--------------------------------------------------------------------------------
/src/miniprogram/各端小程序对比.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/miniprogram/各端小程序对比.jpeg
--------------------------------------------------------------------------------
/src/miniprogram/支付宝小程序架构.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/miniprogram/支付宝小程序架构.png
--------------------------------------------------------------------------------
/src/mobx/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
11 |
12 |
--------------------------------------------------------------------------------
/src/mobx/react16 diff.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/mobx/react16 diff.pdf
--------------------------------------------------------------------------------
/src/mobx/react16-diff.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/mobx/react16-diff.png
--------------------------------------------------------------------------------
/src/mobx/react16-init.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/mobx/react16-init.pdf
--------------------------------------------------------------------------------
/src/mobx/react16-init.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/mobx/react16-init.png
--------------------------------------------------------------------------------
/src/mobx/react16-rerender.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/mobx/react16-rerender.pdf
--------------------------------------------------------------------------------
/src/mobx/react16-rerender.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/mobx/react16-rerender.png
--------------------------------------------------------------------------------
/src/mobx/src/actions/listpage.js:
--------------------------------------------------------------------------------
1 | export default {
2 | counter() {
3 | const {
4 | indexStore,
5 | } = this.props;
6 | console.log('list-action');
7 | indexStore.mainTitle = Math.random();
8 | },
9 | };
10 |
--------------------------------------------------------------------------------
/src/mobx/src/actions/main.js:
--------------------------------------------------------------------------------
1 | export default {
2 | counter() {
3 | const {
4 | indexStore,
5 | listPageStore,
6 | } = this.props;
7 | console.log(11221);
8 | // indexStore.title = Math.random();
9 | listPageStore.list = [3, 2, 1];
10 | },
11 | };
12 |
--------------------------------------------------------------------------------
/src/mobx/src/pages/listPage/log.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/mobx/src/pages/listPage/log.js
--------------------------------------------------------------------------------
/src/mobx/src/selectors/listPage.js:
--------------------------------------------------------------------------------
1 | export default ({
2 | store: {
3 | index: indexStore,
4 | listPage: {
5 | list,
6 | },
7 | },
8 | }) => ({
9 | indexStore,
10 | list,
11 | });
12 |
--------------------------------------------------------------------------------
/src/mobx/src/selectors/main.js:
--------------------------------------------------------------------------------
1 | export default ({
2 | store: {
3 | index: indexStore,
4 | listPage: listPageStore,
5 | }
6 | }) => ({
7 | indexStore,
8 | listPageStore,
9 | })
10 |
--------------------------------------------------------------------------------
/src/mobx/src/stores/index.js:
--------------------------------------------------------------------------------
1 | import index from './main';
2 | import listPage from './listPage';
3 |
4 | export default {
5 | index,
6 | listPage,
7 | }
8 |
--------------------------------------------------------------------------------
/src/mobx/src/stores/listPage.js:
--------------------------------------------------------------------------------
1 | export default {
2 | list: [1, 2, 3],
3 | }
4 |
--------------------------------------------------------------------------------
/src/mobx/src/stores/main.js:
--------------------------------------------------------------------------------
1 | export default {
2 | mainTitle: 'main',
3 | title: 'listpage',
4 | }
5 |
--------------------------------------------------------------------------------
/src/mongodb/README.md:
--------------------------------------------------------------------------------
1 | # mongodb
2 |
3 | ## 参考
4 | - [安装教程](https://www.runoob.com/mongodb/mongodb-linux-install.html)
5 | - [mongoose-with-express](https://github.com/madhums/node-express-mongoose-demo)
6 | - [mongoose-with-typescript](hhttps://github.com/tomanagle/Mongoose-TypeScript-example)
--------------------------------------------------------------------------------
/src/music/README.md:
--------------------------------------------------------------------------------
1 | # 音乐
2 |
3 | [咪咕音乐](https://github.com/zonemeen/musicn)
4 |
5 | ```sh
6 | npm install musicn -g
7 | ```
8 |
9 |
--------------------------------------------------------------------------------
/src/nasa/index.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/nasa/index.html
--------------------------------------------------------------------------------
/src/nativescript/README.md:
--------------------------------------------------------------------------------
1 | ## 参考
2 | - nativescript + vue:https://nativescript-vue.org/en/docs/getting-started/quick-start/
--------------------------------------------------------------------------------
/src/next/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "next/babel",
4 | "@zeit/next-typescript/babel"
5 | ]
6 | }
--------------------------------------------------------------------------------
/src/next/models/index.ts:
--------------------------------------------------------------------------------
1 | import header from './header';
2 |
3 | export default {
4 | header,
5 | };
6 |
--------------------------------------------------------------------------------
/src/next/pages/index.less:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | padding: 0;
4 | font-family: sans-serif;
5 | }
--------------------------------------------------------------------------------
/src/next/pages/index.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Provider } from 'react-redux';
3 | import 'antd/dist/antd.css';
4 |
5 | import './index.less';
6 | import App from '../app/App';
7 | import store from '../store';
8 |
9 | export default () => (
10 |
11 |
12 |
13 | );
14 |
--------------------------------------------------------------------------------
/src/next/store/index.ts:
--------------------------------------------------------------------------------
1 | import { init } from '@rematch/core';
2 | import models from '../models';
3 |
4 | export default init({
5 | models,
6 | });
7 |
--------------------------------------------------------------------------------
/src/next/types/index.ts:
--------------------------------------------------------------------------------
1 | export interface stateInterface {
2 | header: S,
3 | }
4 |
5 | export interface headerInterface {
6 | name?: string,
7 | }
8 |
--------------------------------------------------------------------------------
/src/node/cheerio/app.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const importJsx = require('import-jsx');
4 | module.exports = importJsx('./monitor.jsx');
5 |
--------------------------------------------------------------------------------
/src/node/cheerio/config/cat.json:
--------------------------------------------------------------------------------
1 | {
2 | "interval": 20000,
3 | "last": {
4 | "day": "2019-05-09",
5 | "startTime": "8:30",
6 | "endTime": "20:30"
7 | },
8 | "now": {
9 | "day": "2019-05-10",
10 | "startTime": "8:30",
11 | "endTime": "20:30"
12 | },
13 | "table": {
14 |
15 | }
16 | }
--------------------------------------------------------------------------------
/src/node/cheerio/config/trend.json:
--------------------------------------------------------------------------------
1 | {
2 | "interval": 60000,
3 | "delay" : 120000,
4 | "table": {
5 | }
6 | }
--------------------------------------------------------------------------------
/src/node/cheerio/constants.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | HOUR: 60,
3 | SPACE: ' ',
4 | HORIZON: '-',
5 | VERTICAL: '|',
6 | };
--------------------------------------------------------------------------------
/src/node/cheerio/test/index.js:
--------------------------------------------------------------------------------
1 | const dateFormat =require('dateformat');
2 |
3 | console.log(dateFormat(Date.now(), 'yyyymmddhhMM'));
--------------------------------------------------------------------------------
/src/node/codemirror.md:
--------------------------------------------------------------------------------
1 | # codemirror
2 |
3 | ## 参考
4 |
5 | - [options](https://codemirror.net/doc/manual.html#config)
6 |
7 |
--------------------------------------------------------------------------------
/src/node/koa-ts/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*.js
2 | src/assets
3 | *.zip
4 | package.json
5 | dist
--------------------------------------------------------------------------------
/src/node/koa-ts/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | dist/
3 | npm-debug.log*
4 | yarn-debug.log*
5 | yarn-error.log*
6 | *.zip
7 | .vscode/
8 | lib
9 | .jscpd/
10 | .idea/
11 | node_modules/*
12 | logs/
13 |
--------------------------------------------------------------------------------
/src/node/koa-ts/check.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | APPID="AppFeAPMService"
3 |
4 | count=`ps -efww | grep "node /workspace/carkey/$APPID" | grep -v "grep" | wc -l`
5 | if [ 0 == $count ];
6 | then
7 | echo 'error!'
8 | else
9 | echo 'success';
10 | fi
--------------------------------------------------------------------------------
/src/node/koa-ts/env.js:
--------------------------------------------------------------------------------
1 | module.exports = 'dev';
2 |
--------------------------------------------------------------------------------
/src/node/koa-ts/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | roots: ['/src'],
3 | testMatch: [
4 | '**/__tests__/**/*.+(ts|tsx|js)',
5 | '**/?(*.)+(spec|test).+(ts|tsx|js)',
6 | ],
7 | transform: {
8 | '^.+\\.(ts|tsx)$': 'ts-jest',
9 | },
10 | };
11 |
--------------------------------------------------------------------------------
/src/node/koa-ts/src/domain/service/AbstractServiceV2.ts:
--------------------------------------------------------------------------------
1 | import AbstractService from './AbstractService';
2 |
3 | export default abstract class AbstractServiceV2 extends AbstractService {
4 | /**
5 | * 适配查询
6 | *
7 | * 用于在通用查询之前做统一的where条件适配
8 | *
9 | * 注:请在实体类中具体实现
10 | *
11 | */
12 | abstract adaptQuery(...args: any[]): string;
13 | }
14 |
--------------------------------------------------------------------------------
/src/node/koa-ts/src/sql.ts:
--------------------------------------------------------------------------------
1 |
2 | export const ERROR_TYPE = `
3 | errorType in (
4 | 'SyntaxError',
5 | 'TypeError',
6 | 'ReferenceError',
7 | 'RangeError',
8 | 'URIError',
9 | 'error',
10 | 'Error',
11 | 'UnhandledRejection',
12 | 'Unknow'
13 | )
14 | `;
15 |
16 | export default {};
17 |
--------------------------------------------------------------------------------
/src/node/koa-ts/src/types/async/queue.d.ts:
--------------------------------------------------------------------------------
1 | import { queue } from 'async';
2 | export = queue;
3 |
--------------------------------------------------------------------------------
/src/node/koa-ts/src/utils/SmartSql/AnySql.ts:
--------------------------------------------------------------------------------
1 | export default abstract class AnySql {
2 | [key: string]: T;
3 | }
4 |
--------------------------------------------------------------------------------
/src/node/koa-ts/src/utils/fs-promise.ts:
--------------------------------------------------------------------------------
1 | import * as fs from 'fs';
2 | import * as util from 'util';
3 |
4 | export const writeFile = util.promisify(fs.writeFile);
5 | export const readFile = util.promisify(fs.readFile);
6 | export const exists = util.promisify(fs.exists);
7 | export const unlink = util.promisify(fs.unlink);
8 |
--------------------------------------------------------------------------------
/src/node/mailer/README.md:
--------------------------------------------------------------------------------
1 | # nodemailer
2 |
3 | ## 参考
4 | - [ts下用法](https://subscription.packtpub.com/book/application_development/9781786468710/12/ch12lvl1sec71/sending-mail)
--------------------------------------------------------------------------------
/src/node/mynode/app.js:
--------------------------------------------------------------------------------
1 | const express = require('express');
2 | const request = require('request');
3 |
4 | const app = express();
5 |
6 | app.get('/user', function(req, res) {
7 | res.status(200).json({ name: 'tobi' });
8 | });
9 |
10 | app.listen(3000);
11 |
12 | request({
13 | url: 'http://localhost:3000/user',
14 | }, (res) => {
15 | console.log(res);
16 | });
--------------------------------------------------------------------------------
/src/node/nestjs/README.md:
--------------------------------------------------------------------------------
1 | # nestjs
2 |
3 | > nestjs + mongoose 实操
4 |
5 | ## 参考
6 | - [官方文档](https://docs.nestjs.com/middleware)
7 |
8 | ## 介绍
9 | - 工程化node项目
10 | - 神似ng2+
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/node/nestjs/nest-cli.json:
--------------------------------------------------------------------------------
1 | {
2 | "collection": "@nestjs/schematics",
3 | "sourceRoot": "src"
4 | }
5 |
--------------------------------------------------------------------------------
/src/node/nestjs/src/const/config.ts:
--------------------------------------------------------------------------------
1 | export const config = {
2 | port: 1234,
3 | dab: 'mongodb://localhost:27017/xxxxxx',
4 | };
5 |
--------------------------------------------------------------------------------
/src/node/nestjs/src/const/index.ts:
--------------------------------------------------------------------------------
1 | export const CODE = {
2 | SUCCESS: 0,
3 | FAIL: 1,
4 | };
5 |
6 | export const STATE = {
7 | STATIC: 0,
8 | WAIT: 1,
9 | DISPATCH: 2,
10 | };
11 |
--------------------------------------------------------------------------------
/src/node/nestjs/tsconfig.build.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "exclude": ["node_modules", "test", "dist", "**/*spec.ts"]
4 | }
5 |
--------------------------------------------------------------------------------
/src/node/node-event-loop.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/node/node-event-loop.jpg
--------------------------------------------------------------------------------
/src/node/node-server.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/node/node-server.png
--------------------------------------------------------------------------------
/src/node/pipeline/README.md:
--------------------------------------------------------------------------------
1 | # 模拟流水线
--------------------------------------------------------------------------------
/src/node/playwright/README.md:
--------------------------------------------------------------------------------
1 | # playwright
2 | > puppeteer的替代者,支持跨浏览器,能在 Chromium、Firefox、WebKit 上运行。
3 | >
4 | > 语法基本一致。
5 |
6 | ## 参考
7 | - [参考](https://www.martinmcgee.dev/starting-microsoft-playwright/)
8 |
9 |
--------------------------------------------------------------------------------
/src/node/process1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/node/process1.png
--------------------------------------------------------------------------------
/src/node/puppeteer/test-case/README.md:
--------------------------------------------------------------------------------
1 | # test case
2 |
3 | ## 运行
4 | ```json
5 | // package.json新增命令
6 | {
7 | "test": "tsc && node dist/base-flow.js"
8 | }
9 | ```
10 |
11 | ```cmd
12 | npm test xx=xx ...
13 | ```
--------------------------------------------------------------------------------
/src/node/puppeteer/test-case/types/global.d.ts:
--------------------------------------------------------------------------------
1 | interface ICO {
2 | [key: string]: T;
3 | }
4 |
--------------------------------------------------------------------------------
/src/node/puppeteer/test-case/utils/index.ts:
--------------------------------------------------------------------------------
1 | export const getArg = (arg: ICO): ICO => arg._.reduce((res: ICO, pre: string): ICO => {
2 | const [name, value] = pre.split('=');
3 | if (name) {
4 | res[name] = value;
5 | }
6 | return res;
7 | }, {});
8 |
--------------------------------------------------------------------------------
/src/node/require加载机制.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/node/require加载机制.png
--------------------------------------------------------------------------------
/src/node/skeleton/build/rename.ts:
--------------------------------------------------------------------------------
1 | require('fs-extra').renameSync('./dist/index.js', './dist/index.esm.js');
2 |
--------------------------------------------------------------------------------
/src/node/skeleton/skeleton.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | treeshake: true,
3 | animation: 'shine',
4 | inputDir: './src',
5 | outDir: './src',
6 | ignore: ['include'],
7 | subPackage: [{
8 | root: 'root',
9 | page: [
10 | 'subpage/subpage',
11 | ],
12 | }],
13 | page: [
14 | 'page/page',
15 | ],
16 | };
17 |
--------------------------------------------------------------------------------
/src/node/skeleton/src/config/cach.ts:
--------------------------------------------------------------------------------
1 | export const PATH = 'path';
2 |
--------------------------------------------------------------------------------
/src/node/skeleton/src/config/file.ts:
--------------------------------------------------------------------------------
1 | export const CJS = 'index.cjs.js';
2 |
3 | export const ESM = 'index.esm.js';
4 |
5 | export const JSON_CONFIG = {
6 | USING: 'usingComponents',
7 | };
8 |
9 | export const DEFAULT_CONFIG_FILE = 'skeleton.config.js';
10 |
--------------------------------------------------------------------------------
/src/node/skeleton/src/config/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./dir";
2 |
3 | export * from "./file";
4 |
5 | export * from "./tag";
6 |
7 | export * from "./attr";
8 |
9 | export * from "./default";
10 |
11 | export * from "./cach";
12 |
--------------------------------------------------------------------------------
/src/node/skeleton/src/types/diy.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'html2json';
--------------------------------------------------------------------------------
/src/node/skeleton/src/types/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./common";
2 |
3 | export * from "./parser";
4 |
--------------------------------------------------------------------------------
/src/node/skeleton/test/mocha.opts:
--------------------------------------------------------------------------------
1 | --recursive
--------------------------------------------------------------------------------
/src/node/vuepress-generator/README.md:
--------------------------------------------------------------------------------
1 | # 项目检测工具
--------------------------------------------------------------------------------
/src/node/vuepress-generator/types/html2json.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'html2json';
2 | declare module 'espree';
3 | declare module 'madge';
4 | declare module 'css2less';
--------------------------------------------------------------------------------
/src/node/vuepress-generator/utils/logger.ts:
--------------------------------------------------------------------------------
1 | import chalk from 'chalk';
2 |
3 | export const success = (text: string) => console.log(chalk.green(text));
4 |
5 | export const warn = (text: string) => console.log(chalk.yellow(text));
6 |
7 | export const error = (text: string) => {
8 | console.log(chalk.red(text));
9 | throw new Error(text);
10 | };
11 |
--------------------------------------------------------------------------------
/src/node/事件循环.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/node/事件循环.png
--------------------------------------------------------------------------------
/src/node/新版检测更新.md:
--------------------------------------------------------------------------------
1 | # 新版检测更新
2 |
3 | ## 依赖
4 |
5 | - npm-check-updates
6 | - execa
7 |
8 | ## 代码
9 |
10 | ```js
11 | import { run as ncuRun } from 'npm-check-updates';
12 | import execa = require('execa');
13 | ```
14 |
15 |
--------------------------------------------------------------------------------
/src/node/查看cpu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/node/查看cpu.png
--------------------------------------------------------------------------------
/src/node/滴滴nodeX生态.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/node/滴滴nodeX生态.png
--------------------------------------------------------------------------------
/src/npm&yarn/common-npm-pkg/.eslintignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 | src/components/npm
3 |
--------------------------------------------------------------------------------
/src/npm&yarn/common-npm-pkg/.gitignore:
--------------------------------------------------------------------------------
1 | .idea/
2 | .DS_STORE
3 | /dist
4 | node_modules/
5 | npm-debug.log
6 | .vscode/
7 | mock/data/
8 | coverage/
9 | *.iml
10 | package-lock.json
11 |
--------------------------------------------------------------------------------
/src/npm&yarn/common-npm-pkg/.npmignore:
--------------------------------------------------------------------------------
1 | .babelrc
2 | .eslintignore
3 | .eslintrc
4 | gulpfile.js
5 | webpack.config.js
6 | commitlint.config.js
7 | docs
8 | docs.yml
9 | src
10 |
--------------------------------------------------------------------------------
/src/npm&yarn/common-npm-pkg/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Change Log
2 |
3 | All notable changes to this project will be documented in this file.
4 | See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5 |
6 |
7 | ## [0.0.1](2018-11-27)
8 |
9 | **Note:** git init
10 |
--------------------------------------------------------------------------------
/src/npm&yarn/common-npm-pkg/README.md:
--------------------------------------------------------------------------------
1 | # test
2 |
3 | ## 介绍
4 |
5 | ## 安装
6 |
7 | ## 使用说明
8 |
9 | ## 示例
10 |
11 | ## 未来规划
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/npm&yarn/common-npm-pkg/src/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | test: require('./lib/test.js'),
3 | };
--------------------------------------------------------------------------------
/src/npm&yarn/common-npm-pkg/src/lib/test.js:
--------------------------------------------------------------------------------
1 | module.exports = () => {
2 | // TODO
3 | };
--------------------------------------------------------------------------------
/src/npm&yarn/npm2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/npm&yarn/npm2.png
--------------------------------------------------------------------------------
/src/npm&yarn/npm3对比npm2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/npm&yarn/npm3对比npm2.png
--------------------------------------------------------------------------------
/src/npm&yarn/npm3模块冗余.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/npm&yarn/npm3模块冗余.png
--------------------------------------------------------------------------------
/src/ow/ow.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 校验schema
3 | */
4 | const ow = require('ow');
5 | const unicorn = input => {
6 | ow(input, ow.string.minLength(5));
7 | };
8 | // unicorn('12');
9 | // unicorn('a');
--------------------------------------------------------------------------------
/src/parcel/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | index
4 |
5 |
6 | index2
7 |
8 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/parcel/index.js:
--------------------------------------------------------------------------------
1 | import './index.scss';
2 | console.log(12);
--------------------------------------------------------------------------------
/src/parcel/index.scss:
--------------------------------------------------------------------------------
1 | body {
2 | background: steelblue;
3 | color: white;
4 | }
--------------------------------------------------------------------------------
/src/pg/README.md:
--------------------------------------------------------------------------------
1 | # pg
2 |
3 | ## 参考
4 | - [配置参考](https://postgresqlco.nf/en/doc/param/)
--------------------------------------------------------------------------------
/src/postcss/postcss-markdown.js:
--------------------------------------------------------------------------------
1 | const remark = require("remark");
2 | const path = require("path");
3 | const {
4 | readFileSync,
5 | writeFile,
6 | } = require('fs-extra');
7 | const getPath = filePath => path.join(__dirname, filePath);
8 |
9 | const ast = remark().parse(readFileSync(getPath('./test.md'), 'utf8'));
10 |
11 | console.log(ast);
12 |
--------------------------------------------------------------------------------
/src/postcss/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | // switch syntax automatically by file extensions
3 | parser: 'postcss-syntax',
4 | plugins: [
5 | require('postcss-markdown'),
6 | require('autoprefixer'),
7 | require('cssnano'),
8 | ]
9 | }
--------------------------------------------------------------------------------
/src/postcss/test.css:
--------------------------------------------------------------------------------
1 | .box{background-size:20px 10px,cover;width:50%}.bb{background-size:100%;background-color:red;color:#00f}.bb .aa{-webkit-transform:translateX(90deg);transform:translateX(90deg)}.bb .aa .ff{display:block}.dd{font-size:224rpx}
--------------------------------------------------------------------------------
/src/postcss/test.final.md:
--------------------------------------------------------------------------------
1 | # title
2 |
3 | ```css
4 | ::-webkit-input-placeholder{color:grey}
5 | :-ms-input-placeholder{color:grey}
6 | ::-ms-input-placeholder{color:grey}
7 | ::placeholder{color:grey}```
--------------------------------------------------------------------------------
/src/postcss/test.md:
--------------------------------------------------------------------------------
1 | # title
2 |
3 | ```css
4 | ::placeholder {
5 | color: gray;
6 | }
7 | ```
--------------------------------------------------------------------------------
/src/preact/README.md:
--------------------------------------------------------------------------------
1 | ## htm
2 | - [源码](https://github.com/developit/htm/blob/master/src/index.mjs)
--------------------------------------------------------------------------------
/src/prototype/README.md:
--------------------------------------------------------------------------------
1 | ## 参考链接
2 |
3 | - https://zhuanlan.zhihu.com/p/22787302
4 | - https://juejin.im/post/5a04066351882517c416715d?utm_medium=fe&utm_source=weixinqun
--------------------------------------------------------------------------------
/src/prototype/promise.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/prototype/promise.png
--------------------------------------------------------------------------------
/src/python/opencv.md:
--------------------------------------------------------------------------------
1 | # opencv
2 |
3 |
4 | ```sh
5 | pip3 install opencv-python
6 | ```
--------------------------------------------------------------------------------
/src/qone/qone.js:
--------------------------------------------------------------------------------
1 | const qone = require('qone');
2 |
3 |
4 | const list = [
5 | { name: 'a', age: 1, },
6 | { name: 'b', age: 2, },
7 | { name: 'c', age: 3, },
8 | ];
9 |
10 | const result = qone({
11 | list,
12 | }).query(`
13 | from item in list where item.age >= 2 select item
14 | `);
15 |
16 | console.log(result);
--------------------------------------------------------------------------------
/src/react/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "react",
4 | ["es2015", { "modules": false }],
5 | "stage-0"
6 | ],
7 | plugins: [
8 | 'transform-runtime',
9 | 'transform-decorators-legacy',
10 | 'transform-class-properties'
11 | ],
12 | "env": {
13 | "test": {
14 | "sourceMaps": "inline"
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/react/.browserslistrc:
--------------------------------------------------------------------------------
1 | > 1%
2 | last 2 versions
--------------------------------------------------------------------------------
/src/react/.postcssrc:
--------------------------------------------------------------------------------
1 | {
2 | "modules": true,
3 | "plugins": {
4 | "autoprefixer": {
5 | "grid": true
6 | }
7 | }
8 | }
--------------------------------------------------------------------------------
/src/react/Fiber遍历图.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/react/Fiber遍历图.jpg
--------------------------------------------------------------------------------
/src/react/fiber遍历过程(动画).gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/react/fiber遍历过程(动画).gif
--------------------------------------------------------------------------------
/src/react/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | test
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/react/ink-index.js:
--------------------------------------------------------------------------------
1 | require('import-jsx')('./ink-test');
--------------------------------------------------------------------------------
/src/react/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/react/public/favicon.ico
--------------------------------------------------------------------------------
/src/react/react-16.13.1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/react/react-16.13.1.png
--------------------------------------------------------------------------------
/src/react/react-hook.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/react/react-hook.jpg
--------------------------------------------------------------------------------
/src/react/react16.3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/react/react16.3.png
--------------------------------------------------------------------------------
/src/react/react17.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/react/react17.png
--------------------------------------------------------------------------------
/src/react/react状态管理-05.md:
--------------------------------------------------------------------------------
1 | # 状态管理
2 |
3 | 参考[状态管理](https://juejin.im/post/5ce3ee436fb9a07f070e0220?utm_medium=hao.caibaojian.com&utm_source=hao.caibaojian.com)
4 |
5 |
6 | ## contextAPI
7 | [Unstated Next](https://github.com/jamiebuilds/unstated-next)
8 |
9 | 封装react的contextAPI,模拟状态管理
--------------------------------------------------------------------------------
/src/react/src/App.test.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom';
3 | import App from './App';
4 |
5 | it('renders without crashing', () => {
6 | const div = document.createElement('div');
7 | ReactDOM.render(, div);
8 | });
9 |
--------------------------------------------------------------------------------
/src/react/src/actions/app.js:
--------------------------------------------------------------------------------
1 | import { createAction } from 'redux-actions';
2 |
3 | export const INIT_APP = 'INIT_APP';
4 |
5 | const initApp = createAction(INIT_APP);
6 |
7 | export const actionInitApp = (dispatch, payload) => {
8 | dispatch(initApp(payload));
9 | };
10 |
--------------------------------------------------------------------------------
/src/react/src/actions/index.js:
--------------------------------------------------------------------------------
1 |
2 | export * from './app';
3 |
--------------------------------------------------------------------------------
/src/react/src/index.css:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | padding: 0;
4 | font-family: sans-serif;
5 | }
6 |
--------------------------------------------------------------------------------
/src/react/src/reducers/index.js:
--------------------------------------------------------------------------------
1 | import { combineReducers } from 'redux';
2 |
3 | // app
4 | import app from './app';
5 |
6 | export default combineReducers({
7 | app,
8 | });
9 |
--------------------------------------------------------------------------------
/src/react/src/selectors/app.js:
--------------------------------------------------------------------------------
1 | import { createSelector } from 'reselect';
2 |
3 | const appSelector = state => state.app;
4 |
5 | export default createSelector(
6 | appSelector,
7 | app => ({
8 | ...app,
9 | }),
10 | );
11 |
--------------------------------------------------------------------------------
/src/react/src/store/index.js:
--------------------------------------------------------------------------------
1 | import { createStore } from 'redux';
2 | import reducers from '../reducers';
3 |
4 | const store = createStore(
5 | reducers,
6 | window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__(),
7 | );
8 |
9 | export default store;
10 |
--------------------------------------------------------------------------------
/src/react/syncVSconcurrent.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/react/syncVSconcurrent.jpg
--------------------------------------------------------------------------------
/src/react/v2-e00f66e71bd03b9d4c60d056c57be2e3_hd.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/react/v2-e00f66e71bd03b9d4c60d056c57be2e3_hd.jpg
--------------------------------------------------------------------------------
/src/reactlike/.gitignore:
--------------------------------------------------------------------------------
1 | /dist/
2 |
--------------------------------------------------------------------------------
/src/reactlike/build/common-manifest.json:
--------------------------------------------------------------------------------
1 | {"name":"common_f7f75f8dbbb434be5538","content":{"./node_modules/anujs/dist/React.js":{"id":0,"buildMeta":{"providedExports":true}},"./node_modules/webpack/buildin/global.js":{"id":1,"buildMeta":{"providedExports":true}}}}
--------------------------------------------------------------------------------
/src/reactlike/src/createElement.d.ts:
--------------------------------------------------------------------------------
1 | declare const _default: (type: any, attr: Object, ...children: any[]) => Object;
2 | export default _default;
3 |
--------------------------------------------------------------------------------
/src/reactlike/src/hydrate.d.ts:
--------------------------------------------------------------------------------
1 | declare const _default: (vnode: any, el: Element) => void;
2 | export default _default;
3 |
--------------------------------------------------------------------------------
/src/reactlike/src/hydrate.js:
--------------------------------------------------------------------------------
1 | import { isString, isObject } from './utils';
2 | export default (vnode, el) => {
3 | console.log(vnode);
4 | if (isObject(vnode)) {
5 | el.innerHTML = vnode.render();
6 | }
7 | else if (isString(vnode)) {
8 | el.textContent = vnode;
9 | }
10 | };
11 | //# sourceMappingURL=hydrate.js.map
--------------------------------------------------------------------------------
/src/reactlike/src/hydrate.ts:
--------------------------------------------------------------------------------
1 | import { isString, isObject } from './utils';
2 |
3 | export default (vnode: any, el: Element): void => {
4 | console.log(vnode);
5 | if (isObject(vnode)) {
6 | el.innerHTML = vnode.render();
7 | } else if (isString(vnode)) {
8 | el.textContent = vnode;
9 | }
10 | };
11 |
--------------------------------------------------------------------------------
/src/reactlike/src/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const _default: {
2 | hydrate: (msg?: string) => void;
3 | };
4 | export default _default;
5 |
--------------------------------------------------------------------------------
/src/reactlike/src/index.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 | const hydrate_1 = require("./hydrate");
4 | exports.default = {
5 | hydrate: hydrate_1.default,
6 | };
7 |
--------------------------------------------------------------------------------
/src/reactlike/src/interface.d.ts:
--------------------------------------------------------------------------------
1 | export interface VNode {
2 | attr?: Object | null;
3 | children?: Array | string | null;
4 | tag?: Function | string | null;
5 | }
6 |
--------------------------------------------------------------------------------
/src/reactlike/src/interface.js:
--------------------------------------------------------------------------------
1 | //# sourceMappingURL=interface.js.map
--------------------------------------------------------------------------------
/src/reactlike/src/interface.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"interface.js","sourceRoot":"","sources":["interface.ts"],"names":[],"mappings":""}
--------------------------------------------------------------------------------
/src/reactlike/src/interface.ts:
--------------------------------------------------------------------------------
1 | export interface VNode {
2 | attr?: Object|null;
3 | children?: Array|string|null;
4 | tag?: Function|string|null;
5 | }
--------------------------------------------------------------------------------
/src/reactlike/src/react.d.ts:
--------------------------------------------------------------------------------
1 | import hydrate from './hydrate';
2 | import Component from './Component';
3 | declare const React: {
4 | hydrate: (vnode: any, el: Element) => void;
5 | createElement: (type: any, attr: Object, ...children: any[]) => Object;
6 | Component: typeof Component;
7 | };
8 | export default React;
9 | export { Component, hydrate };
10 |
--------------------------------------------------------------------------------
/src/reactlike/src/utils.d.ts:
--------------------------------------------------------------------------------
1 | export declare function isString(str: T): boolean;
2 | export declare function isFunction(func: T): boolean;
3 | export declare function isObject(obj: T): boolean;
4 |
--------------------------------------------------------------------------------
/src/reactlike/src/utils.js:
--------------------------------------------------------------------------------
1 | export function isString(str) {
2 | return typeof str === 'string' || str instanceof String;
3 | }
4 | ;
5 | export function isFunction(func) {
6 | return typeof func === 'function';
7 | }
8 | ;
9 | export function isObject(obj) {
10 | return typeof obj === 'object';
11 | }
12 | ;
13 | //# sourceMappingURL=utils.js.map
--------------------------------------------------------------------------------
/src/reactlike/src/utils.ts:
--------------------------------------------------------------------------------
1 |
2 | export function isString(str: T): boolean {
3 | return typeof str === 'string' || str instanceof String;
4 | };
5 |
6 | export function isFunction(func: T): boolean {
7 | return typeof func === 'function';
8 | };
9 |
10 | export function isObject(obj: T): boolean {
11 | return typeof obj === 'object';
12 | };
13 |
--------------------------------------------------------------------------------
/src/reactlike/test/app-selector.d.ts:
--------------------------------------------------------------------------------
1 | declare const _default: ((state: any) => any) | undefined;
2 | export default _default;
3 |
--------------------------------------------------------------------------------
/src/reactlike/test/app-selector.js:
--------------------------------------------------------------------------------
1 | import createSelector from './createSelector';
2 | const countSelector = state => state.count;
3 | const calculateSelector = state => state.calculate;
4 | export default createSelector(countSelector, calculateSelector, (count, calculate) => (Object.assign({}, count, calculate)));
5 | //# sourceMappingURL=app-selector.js.map
--------------------------------------------------------------------------------
/src/reactlike/test/connect.d.ts:
--------------------------------------------------------------------------------
1 | export declare function connect(selectorFunc: Function): any;
2 |
--------------------------------------------------------------------------------
/src/reactlike/test/createSelector.d.ts:
--------------------------------------------------------------------------------
1 | declare const _default: (...args: any[]) => ((state: any) => any) | undefined;
2 | export default _default;
3 |
--------------------------------------------------------------------------------
/src/reactlike/test/createStore.d.ts:
--------------------------------------------------------------------------------
1 | export declare const createStore: Function;
2 | export declare const subscribe: (listener: any) => void;
3 |
--------------------------------------------------------------------------------
/src/reactlike/test/index.d.ts:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/reactlike/test/index.d.ts
--------------------------------------------------------------------------------
/src/reactlike/test/provider-props.d.ts:
--------------------------------------------------------------------------------
1 | import { VNode } from '../src/interface';
2 | export declare const storeKey = "store";
3 | export interface ProviderProps {
4 | children?: Array | VNode | null;
5 | }
6 | export interface StoreProps extends Object {
7 | subscribe?: Function | null;
8 | dispatch?: Object | null;
9 | getState?: Function | null;
10 | }
11 |
--------------------------------------------------------------------------------
/src/reactlike/test/provider-props.js:
--------------------------------------------------------------------------------
1 | export const storeKey = 'store';
2 | //# sourceMappingURL=provider-props.js.map
--------------------------------------------------------------------------------
/src/reactlike/test/provider-props.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"provider-props.js","sourceRoot":"","sources":["provider-props.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAAC"}
--------------------------------------------------------------------------------
/src/reactlike/test/provider.d.ts:
--------------------------------------------------------------------------------
1 | import * as React from 'react';
2 | import { ProviderProps } from './provider-props';
3 | export declare class Provider extends React.Component {
4 | props: ProviderProps;
5 | context: Object | null;
6 | constructor(props: ProviderProps, context: Object | null);
7 | render(): any;
8 | }
9 |
--------------------------------------------------------------------------------
/src/reactlike/test/reactlike.d.ts:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/reactlike/test/reactlike.d.ts
--------------------------------------------------------------------------------
/src/reactlike/test/store/calculate.d.ts:
--------------------------------------------------------------------------------
1 | declare const _default: {
2 | state: {
3 | nummmm: number;
4 | };
5 | reducers: {
6 | increment(state: any, payload: any): any;
7 | };
8 | effects: {
9 | incrementAsync(payload: any, rootState: any): Promise;
10 | };
11 | };
12 | export default _default;
13 |
--------------------------------------------------------------------------------
/src/reactlike/test/store/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const _default: any;
2 | export default _default;
3 |
--------------------------------------------------------------------------------
/src/reactlike/test/store/index.js:
--------------------------------------------------------------------------------
1 | import { createStore } from '../provider';
2 | import count from './count';
3 | import calculate from './calculate';
4 | export default createStore({
5 | count,
6 | calculate,
7 | });
8 | //# sourceMappingURL=index.js.map
--------------------------------------------------------------------------------
/src/reactlike/test/store/index.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,eAAe,WAAW,CAAC;IACzB,KAAK;IACL,SAAS;CACV,CAAC,CAAA"}
--------------------------------------------------------------------------------
/src/reactlike/test/store/index.ts:
--------------------------------------------------------------------------------
1 | import { createStore } from '../provider';
2 | import count from './count';
3 | import calculate from './calculate';
4 |
5 | export default createStore({
6 | count,
7 | calculate,
8 | })
--------------------------------------------------------------------------------
/src/reactlike/tslint.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "tslint:latest",
3 | "rules": {
4 | "ban-comma-operator": false,
5 | "no-empty": [true, "allow-empty-catch"],
6 | "no-import-side-effect": false,
7 | "no-var-keyword": false,
8 | "no-var-requires": false,
9 | "prefer-conditional-expression": false
10 | }
11 | }
--------------------------------------------------------------------------------
/src/reason/README.md:
--------------------------------------------------------------------------------
1 | ## 参考
2 | - reason-react:https://reasonml.github.io/docs/en/what-and-why
3 | - OCaml:https://ocaml.org/
--------------------------------------------------------------------------------
/src/redux/redux.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/redux/redux.jpeg
--------------------------------------------------------------------------------
/src/rematch-cli-source/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules/
2 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/.npmignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 |
3 | /example/assets
4 |
5 | /test/js
6 | /coverage
7 |
8 | /.idea
9 |
10 | .DS_Store
11 |
12 | logs
13 | *.log
14 | npm-debug.log*
15 | .eslintcache
16 | /dist
17 | /local
18 | /reports
19 | Thumbs.db
20 | .idea
21 | .vscode
22 | *.sublime-project
23 | *.sublime-workspace
--------------------------------------------------------------------------------
/src/rematch-cli-source/README.md:
--------------------------------------------------------------------------------
1 | # rematch cli
2 |
3 | Cli dev tool for generate a project with rematch
--------------------------------------------------------------------------------
/src/rematch-cli-source/index.js:
--------------------------------------------------------------------------------
1 | const init = require('./lib/init.js');
2 |
3 | module.exports = {
4 | init,
5 | };
6 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/rematch/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/rematch-cli-source/lib/code/rematch/public/favicon.ico
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/rematch/src/index.css:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | padding: 0;
4 | font-family: sans-serif;
5 | }
6 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/rematch/src/models/index.js:
--------------------------------------------------------------------------------
1 | import header from './header';
2 |
3 | export {
4 | header,
5 | };
6 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/rematch/src/selectors/app.js:
--------------------------------------------------------------------------------
1 | import { createSelector } from 'reselect';
2 |
3 | const headerSelector = state => state.header;
4 |
5 | export default createSelector(
6 | headerSelector,
7 | (header) => {
8 | return {
9 | ...header,
10 | };
11 | });
12 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/rematch/src/selectors/header.js:
--------------------------------------------------------------------------------
1 | import { createSelector } from 'reselect';
2 |
3 | const headerSelector = state => state.header;
4 |
5 | export default createSelector(
6 | headerSelector,
7 | (header) => {
8 | return {
9 | ...header,
10 | };
11 | });
12 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/rematch/src/store/index.js:
--------------------------------------------------------------------------------
1 | import { init } from '@rematch/core';
2 | import * as models from '../models';
3 |
4 | const store = init({
5 | models,
6 | });
7 |
8 | export default store;
9 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/typescript/README.md:
--------------------------------------------------------------------------------
1 | # typescript
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/typescript/src/index.css:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | padding: 0;
4 | font-family: sans-serif;
5 | }
6 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/typescript/src/models/index.ts:
--------------------------------------------------------------------------------
1 | import header, { headerInterface } from './header';
2 |
3 | interface stateInterface {
4 | header: any,
5 | }
6 |
7 | export {
8 | header,
9 | headerInterface,
10 | stateInterface,
11 | };
12 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/code/typescript/src/store/index.ts:
--------------------------------------------------------------------------------
1 | import { init } from '@rematch/core';
2 | import * as models from '../models';
3 |
4 | export default init({
5 | models,
6 | });
7 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = {
4 | };
5 |
--------------------------------------------------------------------------------
/src/rematch-cli-source/lib/server.config.js:
--------------------------------------------------------------------------------
1 | module.exports = (config) => {
2 | config.resolve = config.resolve || {};
3 | config.resolve.alias = config.resolve.alias || {};
4 | config.resolve.alias['webpack-hot-client/client'] = require.resolve('webpack-hot-client/client');
5 | return config;
6 | };
7 |
--------------------------------------------------------------------------------
/src/rematch/lib/models/index.js:
--------------------------------------------------------------------------------
1 | export { default as count } from './count';
--------------------------------------------------------------------------------
/src/rematch/lib/store.js:
--------------------------------------------------------------------------------
1 | import {
2 | createStore,
3 | applyMiddleware,
4 | combineReducers,
5 | } form 'redux';
6 | import * as models from './models';
7 | import { init, combineModels } from './rematch';
8 |
9 | const store = createStore(
10 | reducer: combineReducers(combineModels(models)),
11 | );
12 |
13 | module.exports = init(store, { models });
14 |
--------------------------------------------------------------------------------
/src/rematch/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/rematch/public/favicon.ico
--------------------------------------------------------------------------------
/src/rematch/src/index.css:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | padding: 0;
4 | font-family: sans-serif;
5 | }
6 |
--------------------------------------------------------------------------------
/src/rematch/src/models/index.js:
--------------------------------------------------------------------------------
1 | export * from './count';
2 |
3 | export * from './calculate';
--------------------------------------------------------------------------------
/src/rematch/src/store/index.js:
--------------------------------------------------------------------------------
1 | import { init } from '@rematch/core';
2 | import { applyMiddleware } from 'redux';
3 | import * as models from '../models';
4 |
5 | const store = init({
6 | models,
7 | });
8 |
9 | export default store;
--------------------------------------------------------------------------------
/src/rust/README.md:
--------------------------------------------------------------------------------
1 | # rust
2 |
3 | ## 参考
4 | - [自学教程](https://tourofrust.com/00_zh-cn.html)
5 | - [rust开发单页spa](http://www.sheshbabu.com/posts/rust-wasm-yew-single-page-application/s)
6 | - [mako-类rsbuild构建工具](https://github.com/umijs/mako)
--------------------------------------------------------------------------------
/src/rxjs/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
12 |
13 |
--------------------------------------------------------------------------------
/src/rxjs/index.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/rxjs/index.js
--------------------------------------------------------------------------------
/src/serverless/容灾预案.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/serverless/容灾预案.png
--------------------------------------------------------------------------------
/src/serverless/通用serverless架构.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/serverless/通用serverless架构.jpg
--------------------------------------------------------------------------------
/src/sicp/README.md:
--------------------------------------------------------------------------------
1 | ## 拾遗
2 |
3 | ## 闭包
4 | - 起源
5 | - 抽象代数
6 | - 含义
7 | 1. 一集合中的元素,经过运算(操作),产出的结果仍然是集合中的元素(lisp取自此)
8 | 2. 表示为一种带有自由变量的过程(js取自此)
--------------------------------------------------------------------------------
/src/sicp/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | prototype
4 |
5 |
6 | prototype
7 |
8 | 标题
9 | 内容
10 |
11 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/sicp/test.lisp:
--------------------------------------------------------------------------------
1 | (defun (square x) (* x x))
2 |
3 | (defun (sum-of-square x y)
4 | (+ square(x) square(y)))
5 |
6 | (defun (f a)
7 | (cond ((> a 1) (sum-of-square((+a 1) (*a 2))))
8 | (else (sum-of-square((+a 1) (*a 2)))))
9 |
10 | (f 5)
--------------------------------------------------------------------------------
/src/socket&rpc/client.js:
--------------------------------------------------------------------------------
1 |
2 | window.eio = require('engine.io-client');
3 |
--------------------------------------------------------------------------------
/src/socket&rpc/pm2流程.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/socket&rpc/pm2流程.jpeg
--------------------------------------------------------------------------------
/src/socket&rpc/simple-pm2/README.md:
--------------------------------------------------------------------------------
1 | ## 启动方法
2 | 1. node daemon.js // 启动rpc服务器
3 | 2. node rpc-client.js // 调用rpc,启动服务器
4 | 2. node rpc-client.js -s // 调用rpc,关闭服务器
--------------------------------------------------------------------------------
/src/sql/Smartsql/AnySql.ts:
--------------------------------------------------------------------------------
1 | export default abstract class AnySql {
2 | [key: string]: T;
3 | }
4 |
--------------------------------------------------------------------------------
/src/sql/join示例.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/sql/join示例.jpeg
--------------------------------------------------------------------------------
/src/sql/oltp和olap.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/sql/oltp和olap.jpeg
--------------------------------------------------------------------------------
/src/sql/列压缩.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/sql/列压缩.jpeg
--------------------------------------------------------------------------------
/src/sql/列存储.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/sql/列存储.jpeg
--------------------------------------------------------------------------------
/src/sql/索引示意图.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/sql/索引示意图.jpeg
--------------------------------------------------------------------------------
/src/storybook/README.md:
--------------------------------------------------------------------------------
1 | # storybook
2 |
3 | - [各大公司组件库统一管理](https://storybook.js.org/showcase)
4 | - [storybook7](https://storybook.js.org/blog/improved-type-safety-in-storybook-7/)
5 |
6 |
--------------------------------------------------------------------------------
/src/tars/HelloWorld.tgz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/tars/HelloWorld.tgz
--------------------------------------------------------------------------------
/src/test-tools/cucumber语法中文映射.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/test-tools/cucumber语法中文映射.png
--------------------------------------------------------------------------------
/src/test/css/default.css:
--------------------------------------------------------------------------------
1 | * {
2 | color: black;
3 | }
--------------------------------------------------------------------------------
/src/test/css/green.css:
--------------------------------------------------------------------------------
1 | * {
2 | color: green;
3 | }
--------------------------------------------------------------------------------
/src/test/css/red.css:
--------------------------------------------------------------------------------
1 | * {
2 | color: red;
3 | }
--------------------------------------------------------------------------------
/src/test/src/asciichart.js:
--------------------------------------------------------------------------------
1 | import asciichart from 'asciichart';
2 |
3 | var s0 = new Array (120)
4 | for (var i = 0; i < s0.length; i++)
5 | s0[i] = 15 * Math.sin (i * ((Math.PI * 4) / s0.length))
6 | console.log (asciichart.plot (s0))
--------------------------------------------------------------------------------
/src/test/src/can.js:
--------------------------------------------------------------------------------
1 |
2 | import { Component } from 'can';
3 |
4 | const HelloWorld = Component.extend({
5 | tag: 'hello-world',
6 | view: `{{greeting}} world!
`,
7 | ViewModel: { greeting: 'string' },
8 | });
9 |
10 | var helloWorld = new HelloWorld();
11 |
12 |
--------------------------------------------------------------------------------
/src/test/src/chance.js:
--------------------------------------------------------------------------------
1 | const chance = require('chance');
2 |
3 | console.log(chance().phone()); // 随机手机号
4 |
--------------------------------------------------------------------------------
/src/test/src/data.txt:
--------------------------------------------------------------------------------
1 | hello world
--------------------------------------------------------------------------------
/src/test/src/filepond.js:
--------------------------------------------------------------------------------
1 | import * as FilePond from 'filepond';
2 |
3 | const pond = FilePond.create({
4 | multiple: true,
5 | name: 'filepond',
6 | });
7 |
8 | document.body.appendChild(pond.element);
--------------------------------------------------------------------------------
/src/test/src/lumin.js:
--------------------------------------------------------------------------------
1 | import lumin from 'lumin';
2 | const luminator = lumin(document.getElementById('abc'));
3 | luminator.start(5000); // 5000ms to highlight
--------------------------------------------------------------------------------
/src/test/src/v8n.js:
--------------------------------------------------------------------------------
1 | /**
2 | * v8n
3 | *
4 | * 参考:https://github.com/imbrn/v8n
5 | *
6 | */
7 | const v8n = require('v8n');
8 |
9 | module.exports = () => {
10 | const res = v8n().number()
11 | .between(50, 100)
12 | .not.even()
13 | .test(71);
14 | return res;
15 | };
16 |
--------------------------------------------------------------------------------
/src/test/src/wired-elements.js:
--------------------------------------------------------------------------------
1 | import { WiredButton, WiredInput } from "wired-elements";
--------------------------------------------------------------------------------
/src/tfjs/tfjs.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | this is con
6 |
7 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/threejs/README.md:
--------------------------------------------------------------------------------
1 | # threejs
2 |
3 |
4 |
5 | ## 参考
6 |
7 | - [3d卧室](https://my-room-in-3d.vercel.app/)
8 | - [蚂蚁开源-web图形引擎](https://oasisengine.cn/)
9 |
10 |
--------------------------------------------------------------------------------
/src/tools/keyBindings.json:
--------------------------------------------------------------------------------
1 | // Place your key bindings in this file to overwrite the defaults
2 | [
3 | {
4 | "key": "cmd+y",
5 | "command": "redo",
6 | "when": "textInputFocus && !editorReadonly"
7 | },
8 | {
9 | "key": "shift+cmd+z",
10 | "command": "-redo",
11 | "when": "textInputFocus && !editorReadonly"
12 | }
13 | ]
--------------------------------------------------------------------------------
/src/travis/README.md:
--------------------------------------------------------------------------------
1 | # travis
2 |
3 | ## 参考
4 | - [我的gitPage](https://arnoldczhang.github.io/)
5 | - [官网](https://docs.travis-ci.com/)
6 | - [Yummy Jekyll Theme](https://github.com/mzlogin/mzlogin.github.io)
7 | - [简易指南](https://github.com/levy9527/blog/issues/1?utm_medium=hao.caibaojian.com&utm_source=hao.caibaojian.com)
8 |
9 | https://travis-ci.org/arnoldczhang/fe-guide
--------------------------------------------------------------------------------
/src/treeshake/src/index.js:
--------------------------------------------------------------------------------
1 | import { cube } from './other';
2 |
3 | console.log(cube(10));
4 |
--------------------------------------------------------------------------------
/src/treeshake/src/other.js:
--------------------------------------------------------------------------------
1 | async function cube(x) {
2 | await Promise.resolve(x * x * x);
3 | }
4 |
5 | async function square(x) {
6 | await Promise.resolve(x * x);
7 | }
8 |
9 |
10 | export {
11 | cube,
12 | square,
13 | };
14 |
--------------------------------------------------------------------------------
/src/trip/苏州无锡3日2晚游.docx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/trip/苏州无锡3日2晚游.docx
--------------------------------------------------------------------------------
/src/typescript/common-ts-start/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = tab
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/src/typescript/common-ts-start/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*.js
2 | config/*.js
3 | node_modules
4 | src/*.png
5 | src/*.less
6 | src/*.css
7 |
--------------------------------------------------------------------------------
/src/typescript/common-ts-start/.prettierrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | eslintIntegration: true, //开启 eslint 支持
3 | singleQuote: true //使用单引号
4 | };
5 |
--------------------------------------------------------------------------------
/src/typescript/common-ts-start/src/types/html2json.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'html2json';
2 | declare module 'espree';
3 | declare module 'madge';
4 | declare module 'css2less';
--------------------------------------------------------------------------------
/src/typescript/common-ts-start/src/utils/logger.ts:
--------------------------------------------------------------------------------
1 | import * as chalk from 'chalk';
2 |
3 | export const success = (text: string) => console.log(chalk.green(text));
4 |
5 | export const warn = (text: string) => console.log(chalk.yellow(text));
6 |
7 | export const error = (text: string) => {
8 | console.log(chalk.red(text));
9 | throw new Error(text);
10 | };
11 |
--------------------------------------------------------------------------------
/src/unit-test/README.md:
--------------------------------------------------------------------------------
1 | # 单测工具
2 |
3 | ## jest
4 |
5 | [jest实践指南](http://github.yanhaixiang.com/jest-tutorial/basic/getting-started/)
6 |
7 | TDD(结果推过程)
8 |
9 | ## cypress
10 | [链接](https://docs.cypress.io/zh-cn/guides/overview/why-cypress.html#)
11 |
--------------------------------------------------------------------------------
/src/v8/js引擎执行流程.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/v8/js引擎执行流程.png
--------------------------------------------------------------------------------
/src/v8/v8内部结构.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/v8/v8内部结构.png
--------------------------------------------------------------------------------
/src/v8/字节码.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/v8/字节码.png
--------------------------------------------------------------------------------
/src/visualize/README.md:
--------------------------------------------------------------------------------
1 | # visualize
2 |
3 | ## 参考
4 | - https://github.com/CntChen/cntchen.github.io/issues/15
5 | - [表格可视化-s2](https://s2.antv.vision/zh/examples/gallery)
6 |
7 | ## 图表
8 | - [antv](https://antv.antgroup.com/)
9 | - [vue flow](https://vueflow.dev/examples/nodes/nesting.html)
10 | - [logic flow](https://site.logic-flow.cn/tutorial/extension-adapter)
11 |
--------------------------------------------------------------------------------
/src/vscode/keyBindings.json:
--------------------------------------------------------------------------------
1 | [
2 | { "key": "shift+cmd+l", "command": "editor.action.insertCursorAtEndOfEachLineSelected",
3 | "when": "editorTextFocus" },
4 | ]
--------------------------------------------------------------------------------
/src/vue/vite2.9初始化.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/vue/vite2.9初始化.png
--------------------------------------------------------------------------------
/src/vue/vite3.0初始化.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/vue/vite3.0初始化.png
--------------------------------------------------------------------------------
/src/vue/vue-mark-display/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Example
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/vue/vue-pretty-tree/index.js:
--------------------------------------------------------------------------------
1 | import Wrapper from '../dataPanel';
2 | import Tree from './index.vue';
3 |
4 | export default Wrapper(Tree, {
5 | key: 'data',
6 | });
7 |
--------------------------------------------------------------------------------
/src/vue/vue-smart-table/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/vue/vue-smart-table/README.md
--------------------------------------------------------------------------------
/src/webassembly/emscripten/README.md:
--------------------------------------------------------------------------------
1 | # Emscripten
2 | > webassemble的重要组成部分,可以将c/c++代码,编译到asm.js和wasm
3 |
4 |
5 |
6 | ## 流程
7 |
8 |
9 |
10 | 
11 |
12 | ## 参考
13 |
14 | - [Emscripten 使用入门](https://mp.weixin.qq.com/s/vA231eCDVNx6d7gIqMEe9g)
15 |
16 |
--------------------------------------------------------------------------------
/src/webassembly/emscripten/emscripten编译过程.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/webassembly/emscripten/emscripten编译过程.png
--------------------------------------------------------------------------------
/src/webassembly/test.wasm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/webassembly/test.wasm
--------------------------------------------------------------------------------
/src/webassembly/wasm.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/webassembly/wasm.webp
--------------------------------------------------------------------------------
/src/webpack/.gitignore:
--------------------------------------------------------------------------------
1 | /dist/
2 |
--------------------------------------------------------------------------------
/src/webpack/diy.js:
--------------------------------------------------------------------------------
1 | const Person = require('./src/person.pojo');
2 | const person = Person();
3 | person.setFavorites([]);
4 | person.getFavorites();
5 | const title = document.createElement('h1');
6 | title.textContent = 'title';
7 | title.classList = ['title'];
8 | document.body.appendChild(title);
9 |
--------------------------------------------------------------------------------
/src/webpack/import-polyfill.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/webpack/import-polyfill.png
--------------------------------------------------------------------------------
/src/webpack/index.ts:
--------------------------------------------------------------------------------
1 | interface Person {
2 | firstName: string;
3 | lastName: string;
4 | }
5 |
6 | function greeter(person: Person) {
7 | return `Hello, ${person.firstName} ${person.lastName}`;
8 | }
9 |
10 | var user = { firstName: "Jane", lastName: "User" };
11 |
12 | document.body.innerHTML = greeter(user);
--------------------------------------------------------------------------------
/src/webpack/js-hot-loader/.npmignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 |
3 | /example/assets
4 |
5 | /test/js
6 | /coverage
7 |
8 | /.idea
9 |
10 | .DS_Store
11 |
12 | logs
13 | *.log
14 | npm-debug.log*
15 | .eslintcache
16 | /dist
17 | /local
18 | /reports
19 | Thumbs.db
20 | .idea
21 | .vscode
22 | *.sublime-project
23 | *.sublime-workspace
--------------------------------------------------------------------------------
/src/webpack/js-hot-loader/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## webpack-dev-server
2 | - SSE
3 | - websocket
4 | ## webpack-dev-middleware
5 | eventEmitter
6 | ## webpack-hot-middleware
7 | 纯 heartbeat
--------------------------------------------------------------------------------
/src/webpack/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "common.js": "common.743d69922007585e8c8d.js",
3 | "common.js.map": "common.743d69922007585e8c8d.js.map",
4 | "index.js": "index.743d69922007585e8c8d.js",
5 | "index.js.map": "index.743d69922007585e8c8d.js.map"
6 | }
--------------------------------------------------------------------------------
/src/webpack/pitch&normal-loader.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/webpack/pitch&normal-loader.jpeg
--------------------------------------------------------------------------------
/src/webpack/pojo-loader/.npmignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 |
3 | /example/assets
4 |
5 | /test/js
6 | /coverage
7 |
8 | /.idea
9 |
10 | .DS_Store
11 |
12 | logs
13 | *.log
14 | npm-debug.log*
15 | .eslintcache
16 | /dist
17 | /local
18 | /reports
19 | Thumbs.db
20 | .idea
21 | .vscode
22 | *.sublime-project
23 | *.sublime-workspace
--------------------------------------------------------------------------------
/src/webpack/pojo-loader/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/webpack/pojo-loader/CHANGELOG.md
--------------------------------------------------------------------------------
/src/webpack/src/app.less:
--------------------------------------------------------------------------------
1 | .title {
2 | .aa {
3 | background: red;
4 | }
5 | display: flex;
6 | color: red;
7 | }
--------------------------------------------------------------------------------
/src/webpack/src/app.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/webpack/src/app.png
--------------------------------------------------------------------------------
/src/webpack/src/number.js:
--------------------------------------------------------------------------------
1 | module.exports = (val) => {
2 | console.log(_.filter);
3 | return val * val;
4 | };
--------------------------------------------------------------------------------
/src/webpack/src/person.pojo:
--------------------------------------------------------------------------------
1 | public
2 |
3 |
4 |
5 | String
6 | name;
7 |
8 |
9 |
10 | public Number age;
11 |
12 |
13 | private
14 |
15 |
16 | Array favorites;
17 |
18 | private Number
19 |
20 |
21 | weight;
22 |
23 |
--------------------------------------------------------------------------------
/src/webpack/src/polyfills.js:
--------------------------------------------------------------------------------
1 | // polyfill包
2 | import 'babel-polyfill';
3 | import 'whatwg-fetch';
4 |
--------------------------------------------------------------------------------
/src/webpack/src/ref.json:
--------------------------------------------------------------------------------
1 | [{
2 | "num": 1,
3 | "word": "One"
4 | }, {
5 | "num": 2,
6 | "word": "Two"
7 | }, {
8 | "num": 3,
9 | "word": "Three"
10 | }, {
11 | "num": 4,
12 | "word": "Four"
13 | }, {
14 | "num": 5,
15 | "word": "Five"
16 | }, {
17 | "num": 0,
18 | "word": "Zero"
19 | }]
--------------------------------------------------------------------------------
/src/webpack/src/test2.js:
--------------------------------------------------------------------------------
1 | var nn = {
2 | abs() {
3 | return 12313413;
4 | }
5 | };
--------------------------------------------------------------------------------
/src/webpack/test/test1.js:
--------------------------------------------------------------------------------
1 | console.log(122);
2 |
3 | export default {
4 | abs() {
5 | return 12313413;
6 | }
7 | };
--------------------------------------------------------------------------------
/src/webpack/webpack-async.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/webpack/webpack-async.jpeg
--------------------------------------------------------------------------------
/src/webpack/webpack流程.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/src/webpack/webpack流程.jpg
--------------------------------------------------------------------------------
/tasks/init.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | cd ..
3 | root_path=$PWD
4 | echo 'hello travissssssss'
5 |
--------------------------------------------------------------------------------
/tasks/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo 'installing...'
4 |
--------------------------------------------------------------------------------
/test.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/test.js
--------------------------------------------------------------------------------
/test.sql:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arnoldczhang/fe-guide/20bf6d56ff6da78a29580bd6feccc2ebdfe4c539/test.sql
--------------------------------------------------------------------------------
/test/mocha.opts:
--------------------------------------------------------------------------------
1 | --reporter mochawesome
2 | --recursive
--------------------------------------------------------------------------------
/worker/index.js:
--------------------------------------------------------------------------------
1 | module.exports = function () {
2 | console.log(123);
3 | };
--------------------------------------------------------------------------------