{"id":13542064,"url":"https://github.com/Kennytian/learning-react-native","last_synced_at":"2025-04-02T09:33:18.384Z","repository":{"id":93778897,"uuid":"56762854","full_name":"Kennytian/learning-react-native","owner":"Kennytian","description":"React Native Learning Notebook","archived":false,"fork":false,"pushed_at":"2019-07-19T01:00:11.000Z","size":6885,"stargazers_count":161,"open_issues_count":0,"forks_count":31,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-03-28T19:21:21.047Z","etag":null,"topics":["android","codepush","react-native","redux","xcode"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/Kennytian.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}},"created_at":"2016-04-21T09:57:37.000Z","updated_at":"2024-09-27T08:34:06.000Z","dependencies_parsed_at":"2023-06-15T07:45:38.425Z","dependency_job_id":null,"html_url":"https://github.com/Kennytian/learning-react-native","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kennytian%2Flearning-react-native","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kennytian%2Flearning-react-native/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kennytian%2Flearning-react-native/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kennytian%2Flearning-react-native/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Kennytian","download_url":"https://codeload.github.com/Kennytian/learning-react-native/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246789130,"owners_count":20834235,"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":["android","codepush","react-native","redux","xcode"],"created_at":"2024-08-01T10:01:00.928Z","updated_at":"2025-04-02T09:33:16.892Z","avatar_url":"https://github.com/Kennytian.png","language":"JavaScript","readme":"# React Native 学习笔记\n\n欢迎您帮忙纠错, 一起帮助更多的人，学习交流 QQ 群：[413381701](http://shang.qq.com/wpa/qunwpa?idkey=3b9474dacbf35e4a9659e89399758406e510e5b8a3f81109f7d07efaadc6056d)\n\n[![LICENSE](https://img.shields.io/badge/license-Anti%20996-blue.svg)](https://github.com/996icu/996.ICU/blob/master/LICENSE)\n[![CircleCI](https://circleci.com/gh/Kennytian/learning-react-native.svg?style=svg)](https://circleci.com/gh/Kennytian/learning-react-native)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/Kennytian/learning-react-native/pulls)\n\n### React Native\n\n* [React Native 在 Windows 环境搭建](./environment/config-environment-on-windows.md)\n* [React Native 常用控件](./components/popular-component.md)\n* [React Native API 学习](./api/react-native-api.md)\n* [React Native 坑大发](./environment/react-native-pit.md)\n* [React Native 命令大全](./api/react-native-commands.md)\n* [一句技巧](./others/one-word-tips.md)\n* **[React Native 面试题](./others/react-native-interview.md)**\n* [React Native ESLint \u0026 Airbnb 配置](./environment/react-native-eslint.md)\n* [用 TypeScript 来开发 React Native](./advanced/with_typescript.md)\n* [开发 React 自定义组件](./advanced/custom-components.md)\n* [StyleSheet 源码](./advanced/source-code/stylesheet.md)\n\n### 开发工具\n\n* [WebStorm 一键运行 Android 项目](./ide/webstorm/run_with_npm.md)\n* [用 WebStorm 调试 React Native]\n* [React Native Debugger](./ide/react-native-debugger.md)\n* [storybook]\n* [reactotron]\n\n### Node 相关\n\n* [Node 命令切换 iOS 打 Debug 或 Release 包](./articles/xcscheme-switcher.md)\n* [package.json 的 dependencies 里有趣现象](./articles/funny-package-dependencies.md)\n* [实用 package scripts 配置](./others/package-scripts.md)\n* [下载 yarn 源码安装方法](./articles/install-yarn-with-sourcecode.md)\n* [记一次 yarn 升级失败原因](./articles/upgrade-yarn-faild.md)\n* [package-lock.json 与 yarn.lock](./articles/package-lock-and-yarn-lock.md)\n* [使用 NVM 管理不同的 Node.js 版本](./environment/nvm.md)\n\n### 最佳拍档\n\n* [Immutable 基础](./others/first-immutable.md)\n* [Immutable 实战](./others/action-immutable.md)\n* [Redu 之 Action](./redux/action.md)\n* [Redu 之 Reducer](./redux/reducer.md)\n* [Redu 之 Store](./redux/store.md)\n* [Redux-Saga](./redux/redux-saga.md)\n* [mobx](./mobx/first.md)\n* [修改 ESLint 错误提示](./articles/fix-eslint-error-hint.md)\n\n### 原生集成\n\n* [集成微信登录至 React Native 项目中](./components/login-with-wechat.md)\n* [将 React Native 集成至现有 Android 项目中](https://github.com/Kennytian/embedded)\n* [React Native Module for CodePush 入门](./components/code-push-basic.md)\n* [React Native Module for CodePush 实战](./components/code-push-action.md)\n\n### Mock 与测试\n\n* [easy-mock 介绍]\n* [Jest 测试之网络请求](./api/jest-in-action-network-request.md)\n* [Jest 测试之 React Components](./api/jest-in-action-components.md)\n* [Jest 测试之 ReduAction](./api/jest-in-action-redux-action.md)\n* [Jest 测试之 ReduReducer](./api/jest-in-action-redux-reducer.md)\n* [React Native 自动化测试之 Detox]\n\n### 原生开发\n\n* [开发 Native Modules 供 JS 调用](./components/develop-native-modules.md)\n* [Gradle 知识点](./gradle/gradle-basic.md)\n* [Maven 知识点]\n* [Objective C 基础知识](./api/learning-objective-c.md)\n* [Xcode 知识点](./environment/xcode.md)\n\n### 崩溃与埋点\n\n* [react-native-fabric]\n* [react-native-sentry]\n* [bugsnag-react-native]\n* [react-native-instabug]\n* [react-native-google-analytics-bridge]\n* [纯 JS 崩溃信息收集 fundebug-reactnative](./articles/fundebug-reactnative.md)\n\n### 上架与市场\n\n* [开发 iOS 内购遇到的坑](./environment/app-in-purchase-issues.md)\n* [提交 App Store 审核总结](./others/app-store-reject.md)\n* [用 Jenkins CI 打 Android 和 iOS 包](./environment/react-native-ci.md)\n\n### 性能优化\n\n* [了解 React Fiber](./advanced/about-react-fiber.md)\n* [React Native 性能优化](./advanced/performance.md)\n* [记一次 Redu 持久化性能优化](./articles/redux-persist-optimized.md)\n* [实战项目版本升级历程](./advanced/version-upgrade.md)\n\n### 服务端\n\n* [Serverless 入门（一） - 创建 IAM](https://www.jianshu.com/p/9fb731a799e2)\n* [Serverless 入门（二） - HelloWord](https://www.jianshu.com/p/ddf2ffda5f63)\n* [Serverless 入门（三）- 初始项目解读](https://www.jianshu.com/p/8baba2a8fe9f)\n* [Serverless 入门（四）- 如何调试](https://www.jianshu.com/p/58d30915de8a)\n* [Serverless 入门（五）- 常用命令](https://www.jianshu.com/p/28f001ea9d9d)\n* [Serverless 入门（六）- DynamoDB 数据库（上）](https://www.jianshu.com/p/c313b61d1cbf)\n* [Serverless 入门（七）- DynamoDB 数据库（中）](https://www.jianshu.com/p/05e7f4ccd6fe)\n* [Serverless 入门（八）- DynamoDB 数据库（下）](https://www.jianshu.com/p/0f9f1561ec46)\n* [Serverless 入门（九）- 权限](https://www.jianshu.com/p/97228749d761)\n\n### TODO\n\n* [Native Modules 原理]\n* [拆分 JS bundle]\n* [增量更新]\n* [自己开发一个 React Native]\n* [FlatList 原理]\n* [ImageEditor/ImageStore/CameraRoll 等. RN 照片组件能否做的和 Native 一样]\n* [ReactNavigator 和 React Router 的相关和不同]\n* [React Native 动画到底能有多炫酷？]\n* [React Native 手势的高级操作]\n* [JS Native 通讯]\n* [JS packager 与拆包]\n* [RN 框架的整体设计]\n* [Native Web web-serverswork 小程序 加载的相同和不同]\n* [Native Web RN 三种页面之间的本地通讯]\n* [RN 与 flutter 区别]\n","funding_links":[],"categories":["教程"],"sub_categories":["系列教程"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FKennytian%2Flearning-react-native","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FKennytian%2Flearning-react-native","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FKennytian%2Flearning-react-native/lists"}