{"id":15046880,"url":"https://github.com/zhiqiang21/blog","last_synced_at":"2025-10-25T08:12:24.051Z","repository":{"id":99885865,"uuid":"41651670","full_name":"zhiqiang21/blog","owner":"zhiqiang21","description":"记录前端开发日常点滴。为梦想Coding...","archived":false,"fork":false,"pushed_at":"2024-06-11T13:41:03.000Z","size":39809,"stargazers_count":402,"open_issues_count":53,"forks_count":44,"subscribers_count":88,"default_branch":"master","last_synced_at":"2025-05-25T11:07:46.225Z","etag":null,"topics":["css3","es6","html5","javascript","nodejs","python","react"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zhiqiang21.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"custom":null}},"created_at":"2015-08-31T02:32:16.000Z","updated_at":"2025-05-23T10:12:26.000Z","dependencies_parsed_at":"2023-05-10T22:00:14.958Z","dependency_job_id":"9d8b04d5-17bb-4c0b-b75c-4dc21acd2c8c","html_url":"https://github.com/zhiqiang21/blog","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zhiqiang21/blog","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhiqiang21%2Fblog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhiqiang21%2Fblog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhiqiang21%2Fblog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhiqiang21%2Fblog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zhiqiang21","download_url":"https://codeload.github.com/zhiqiang21/blog/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhiqiang21%2Fblog/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280923613,"owners_count":26414270,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-25T02:00:06.499Z","response_time":81,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["css3","es6","html5","javascript","nodejs","python","react"],"created_at":"2024-09-24T20:53:42.055Z","updated_at":"2025-10-25T08:12:24.022Z","avatar_url":"https://github.com/zhiqiang21.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"- [2015](#2015)\n- [2016](#2016)\n- [2017](#2017)\n- [2018](#2018)\n- [2019](#2019)\n- [2020](#2020)\n- [2024](#2024)\n- [Python开发](#python开发)\n- [设计模式](#设计模式)\n- [工具配置](#工具配置)\n\n**曾经的博客地址：**\n- [CSDN 博客](https://blog.csdn.net/yisuowushinian)\n- [SegmentFault 博客](https://segmentfault.com/u/zhiqiang/articles)\n\n## 2015\n- [根据 iPhone6 设计稿动态计算 rem 值](https://github.com/zhiqiang21/blog/issues/1)\n- [移动端 h5 开发相关内容总结----CSS 篇 20151223](https://github.com/zhiqiang21/blog/issues/2)\n\n## 2016\n- [移动端 h5 开发相关内容总结----JavaScript 篇 20160104](https://github.com/zhiqiang21/blog/issues/3)\n- [h5 端呼起摄像头扫描二维码并解析_20160120](https://github.com/zhiqiang21/blog/issues/4)\n- [移动端 h5 开发相关内容总结----flex 布局思考 20160131](https://github.com/zhiqiang21/blog/issues/5)\n- [JavaScript \"跑马灯\"抽奖活动代码解析与优化（一）20160215](https://github.com/zhiqiang21/blog/issues/6)\n- [JavaScript \"跑马灯\"抽奖活动代码解析与优化（二）20160215](https://github.com/zhiqiang21/blog/issues/7)\n- [\"瀑布流式\"图片懒加载代码解析及优化(二)20160222](https://github.com/zhiqiang21/blog/issues/11)\n- [MySlide 插件开发知识点总结和 css3 动画性能问题的研究](https://github.com/zhiqiang21/blog/issues/12)\n- [前端开发知识点总结_20160405](https://github.com/zhiqiang21/blog/issues/13)\n- [Chrome 开发者工具中关于\"Deferred long-running timer task(s) \"的警告_20160723](https://github.com/zhiqiang21/blog/issues/19)\n- [html5 学习开发指南_20160805](https://github.com/zhiqiang21/blog/issues/24)\n- [JavaScript 面向对象开发知识总结基础篇_20160807](https://github.com/zhiqiang21/blog/issues/25)\n- [移动端 h5 开发相关内容总结（四）_20161003](https://github.com/zhiqiang21/blog/issues/27)\n- [nodejs 分析 excel 文件将结果写入 excel 文件_20161004](https://github.com/zhiqiang21/blog/issues/28)\n- [高清屏概念解析与检测设备像素比的方法_20161005](https://github.com/zhiqiang21/blog/issues/29)\n- [再谈移动端适配和点 5 像素的由来_20161006](https://github.com/zhiqiang21/blog/issues/30)\n- [对“粘连”footer 布局的思考和总结_20161227](https://github.com/zhiqiang21/blog/issues/33)\n\n## 2017\n- [微信小程序调研文档_20170114](https://github.com/zhiqiang21/blog/issues/34)\n- [微信小程序开发知识点总结_20170217](https://github.com/zhiqiang21/blog/issues/36)\n- [踩坑 koa1.x 升级 koa2.x 及前端工程师面临的新挑战_20170307](https://github.com/zhiqiang21/blog/issues/37)\n- [MDN 搜索结果自动跳转中文地址_20170717](https://github.com/zhiqiang21/blog/issues/38)\n- [记最近一次 Nodejs 全栈开发经历_20170722](https://github.com/zhiqiang21/blog/issues/39)\n- [记一次 fis3+react 开发经历_20170917](https://github.com/zhiqiang21/blog/issues/41)\n- [axios 知识点总结_20170925](https://github.com/zhiqiang21/blog/issues/42)\n- [记一次 Nodejs 安全工单的处理过程_20171226](https://github.com/zhiqiang21/blog/issues/43)\n\n## 2018\n- [我是如何使用 React+Redux 构建大型应用的_20180112](https://github.com/zhiqiang21/blog/issues/44)\n\n## 2019\n- [基于 Nodejs 的前端灰度发布方案_20190228](https://github.com/zhiqiang21/blog/issues/45)\n- [29 岁的人生并不是那么平平淡淡_20190308](https://github.com/zhiqiang21/blog/issues/46)\n- [Linux 文件权限管理_20190323](https://github.com/zhiqiang21/blog/issues/47)\n- [你不知道的 flex-shrink 对布局的影响_20190513](https://github.com/zhiqiang21/blog/issues/48)\n- [line-height 和 vertical-align 深入理解_20190602](https://github.com/zhiqiang21/blog/issues/49)\n- [将 webpack 打包优化到极致_20180619](https://github.com/zhiqiang21/blog/issues/50)\n- [前端性能优化之----静态文件客户端离线缓存_20191110](https://github.com/zhiqiang21/blog/issues/52)\n\n## 2020\n- 由浅入深理解 Babel----常见配置详解_20200823.md\n- 由浅入深理解 Babel----编译原理深入解析_20200823.md\n\n## 2024\n- [React Fiber架构解析（一）](https://github.com/zhiqiang21/blog/issues/55)\n- [React Fiber架构解析（二）](https://github.com/zhiqiang21/blog/issues/56)\n\n## Python开发\n- [Python 解析har文件将域名分类导出](https://github.com/zhiqiang21/blog/issues/16)\n\n## 设计模式\n- [装饰者模式_20160717](https://github.com/zhiqiang21/blog/issues/17)\n- [单例模式_20160723](https://github.com/zhiqiang21/blog/issues/18)\n- [策略模式_20160725](https://github.com/zhiqiang21/blog/issues/20)\n- [职责链模式_20160726](https://github.com/zhiqiang21/blog/issues/21)\n\n## 工具配置\n- [前端开发 sublime text 插件安装和配置](https://github.com/zhiqiang21/blog/issues/10)\n- [前端开发 Atom 编辑器插件安装和配置](https://github.com/zhiqiang21/MyToolsConfig/issues/1)\n\n\n\n## Star History\n[![Star History Chart](https://api.star-history.com/svg?repos=zhiqiang21/blog\u0026type=Timeline)](https://star-history.com/#zhiqiang21/blog\u0026Timeline)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhiqiang21%2Fblog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzhiqiang21%2Fblog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhiqiang21%2Fblog/lists"}