{"id":26387087,"url":"https://github.com/chenlong-io/blog","last_synced_at":"2025-03-17T08:29:22.943Z","repository":{"id":126915924,"uuid":"133107449","full_name":"chenlong-io/blog","owner":"chenlong-io","description":"博客，记录平常的所学所想","archived":false,"fork":false,"pushed_at":"2023-06-19T09:08:30.000Z","size":41,"stargazers_count":47,"open_issues_count":31,"forks_count":2,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-12-16T05:00:45.218Z","etag":null,"topics":["javascript"],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chenlong-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2018-05-12T02:36:59.000Z","updated_at":"2024-01-09T11:04:28.000Z","dependencies_parsed_at":"2023-06-18T22:02:03.135Z","dependency_job_id":null,"html_url":"https://github.com/chenlong-io/blog","commit_stats":null,"previous_names":["chenlong-io/blog"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenlong-io%2Fblog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenlong-io%2Fblog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenlong-io%2Fblog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenlong-io%2Fblog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chenlong-io","download_url":"https://codeload.github.com/chenlong-io/blog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243999385,"owners_count":20381340,"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","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":["javascript"],"created_at":"2025-03-17T08:29:21.713Z","updated_at":"2025-03-17T08:29:22.882Z","avatar_url":"https://github.com/chenlong-io.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"\n### 记录学习、工作中所闻所见所想🚀\n\n## 最新文章\n- [RPC入门理解](https://github.com/Vibing/blog/issues/39)\n- [gRPC的简单使用](https://github.com/Vibing/blog/issues/40)\n- [观察者模式(发布订阅）](https://github.com/Vibing/blog/issues/36)\n- [策略模式](https://github.com/Vibing/blog/issues/37)\n- [状态模式](https://github.com/Vibing/blog/issues/38)\n- [nestjs模块](https://github.com/Vibing/blog/issues/34)\n- [nestjs身份验证](https://github.com/Vibing/blog/issues/35)\n- [ES6设计模式](https://github.com/Vibing/blog/issues/33)\n- [@babel/preset-env与@babel/plugin-transform-runtime](https://github.com/Vibing/blog/issues/32)\n- [jenkins自动构建部署](https://github.com/Vibing/blog/issues/30)\n- [React Hooks Immutable](https://github.com/Vibing/blog/issues/29)\n- [JavaScript的内存模型](https://github.com/Vibing/blog/issues/28)\n\n## JavaScript\n- [JavaScript的内存模型](https://github.com/Vibing/blog/issues/28)\n- [Object.defineProperty 与 Proxy](https://github.com/Vibing/blog/issues/26)\n- [web worker的使用](https://github.com/Vibing/blog/issues/21)\n- [时间分片(Time Slicing)](https://github.com/Vibing/blog/issues/22)\n- Event Loop (事件循环)\n- IntersectionObserver API 使用\n\n## 设计模式\n- [单例模式](https://github.com/Vibing/blog/issues/12)\n- [观察者模式(发布订阅）](https://github.com/Vibing/blog/issues/36)\n- [策略模式](https://github.com/Vibing/blog/issues/37)\n- [状态模式](https://github.com/Vibing/blog/issues/38)\n- 责任链模式\n\n## React\n- [React Hooks Immutable](https://github.com/Vibing/blog/issues/29)\n- [微前端(singleSpa + React )试玩](https://github.com/Vibing/blog/issues/20)\n- [React中的事件函数为什么要bind this](https://github.com/Vibing/blog/issues/13)\n- [谈谈代码拆分，聊聊基于路由拆分 VS 基于组件拆分](https://github.com/Vibing/blog/issues/5)\n- [React优化：竭尽全力的减少render渲染](https://github.com/Vibing/blog/issues/3)\n- [React和Immutable天生的一对](https://github.com/Vibing/blog/issues/2)\n- [理解JSX和虚拟DOM](https://github.com/Vibing/blog/issues/1)\n- [React Hooks优化](https://github.com/Vibing/blog/issues/27)\n\n## Angular\n- 了解透彻什么是模块(NgModule)\n- Angular项目过大？合理拆分它！\n- 如何按需加载模块并使用组件？（非路由方式的按需加载）\n- Angular 14+ 的独立组件有多好用\n- Angular 16 Signals\n- 使用 Service 做状态管理\n- Angular实战中非常使用的代码\n\n\n## Nodejs\n- [Nodejs文件上传、监听上传进度](https://github.com/Vibing/blog/issues/23)\n- [Nodejs 核心模块简介](https://github.com/Vibing/blog/issues/10)\n- [学Node必须掌握的Buffer和Stream](https://github.com/Vibing/blog/issues/11)\n- [koa+jwt实现token验证与刷新](https://github.com/Vibing/blog/issues/7)\n- 使用koa上传大型文件\n- 事件循环：了解NodeJs中的非阻塞I/O的核心概念\n- global 和 process \n- 事件发射器：Event Emitters\n- 流和缓冲区：Stream和 Buffer处理数据的有效方法\n- Nodejs中的集群\n\n## RPC\n- [RPC入门理解](https://github.com/Vibing/blog/issues/39)\n- [gRPC的简单使用](https://github.com/Vibing/blog/issues/40)\n\n## Nestjs\n- [模块](https://github.com/Vibing/blog/issues/34)\n- [身份验证](https://github.com/Vibing/blog/issues/35)\n\n## Mysql\n- [Mysql入门第一课《建表、改表、删表》](https://github.com/Vibing/blog/issues/14)\n- [Mysql入门第二课《数据类型》](https://github.com/Vibing/blog/issues/15)\n- [Mysql入门第三课《数据的增删改》](https://github.com/Vibing/blog/issues/16)\n- [Mysql入门第四课《查询数据》](https://github.com/Vibing/blog/issues/17)\n- [Mysql入门第五课《外键约束》](https://github.com/Vibing/blog/issues/18)\n- [Mysql入门第六课《一对一、一对多、多对多》](https://github.com/Vibing/blog/issues/19)\n- Mysql入门第九课《常用函数的使用》\n- Mysql入门第十课《Mysql LIKE 子句》\n- Mysql入门第十一课《MySQL UNION 操作符》\n- ......\n- [Mysql常用命令](https://github.com/Vibing/blog/issues/6)\n\n\n## NPM\n- [npm常用命令](https://github.com/Vibing/blog/issues/4)\n\n## Webpack\n- [好用的webpack插件：webpack-oss-upload-plugin](https://github.com/Vibing/blog/issues/25)\n- [@babel/preset-env与@babel/plugin-transform-runtime](https://github.com/Vibing/blog/issues/32)\n\n## Docker\n- [jenkins自动构建部署](https://github.com/Vibing/blog/issues/30)\n- [前端学Docker](https://github.com/Vibing/blog/issues/8)\n- [Docker简单实操](https://github.com/Vibing/blog/issues/24)\n- [使用Docker部署Node应用](https://github.com/Vibing/blog/issues/9)\n\n## Git\n- [git ssh秘钥](https://github.com/Vibing/blog/issues/31)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchenlong-io%2Fblog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchenlong-io%2Fblog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchenlong-io%2Fblog/lists"}