All Projects → JohnsenZhou → react-mobile-starter

JohnsenZhou / react-mobile-starter

Licence: MIT license
🌈 A starter project structure for React.js app using Dva.

Programming Languages

javascript
184084 projects - #8 most used programming language
CSS
56736 projects
HTML
75241 projects

Projects that are alternatives of or similar to react-mobile-starter

Dva React Worms
dva新手综合教程
Stars: ✭ 70 (+52.17%)
Mutual labels:  react-router, react-redux, dva
Dva Starter
完美使用 dva react react-router,最好用的ssr脚手架,服务器渲染最佳实践
Stars: ✭ 60 (+30.43%)
Mutual labels:  react-router, react-redux, dva
Antd Umi Sys
企业BI系统,数据可视化平台,主要技术:react、antd、umi、dva、es6、less等,与君共勉,互相学习,如果喜欢请start ⭐。
Stars: ✭ 503 (+993.48%)
Mutual labels:  react-router, react-redux, dva
Alldemo
🍑 2020全栈学习Demo大合集 包含最新 hooks TS 等 还有umi+dva,数据可视化等实战项目 (持续更新中)
Stars: ✭ 189 (+310.87%)
Mutual labels:  react-router, react-redux, dva
cnode-react
a web app for cnode.org with react + react-router + react-redux
Stars: ✭ 23 (-50%)
Mutual labels:  react-router, react-redux
rgxp
Regular Expression Collection (ReactJS, Redux, React Router, Recompose, NodeJS, Express)
Stars: ✭ 62 (+34.78%)
Mutual labels:  react-router, react-redux
react-demo
一个实际项目(OA系统)中的部分功能。这个demo中引入了数据库,数据库使用了mongodb。安装mongodb才能运行完整的功能
Stars: ✭ 92 (+100%)
Mutual labels:  react-router, react-redux
rapid-react
A light weight interactive CLI Automation Tool 🛠️ for rapid scaffolding of tailored React apps with Create React App under the hood.
Stars: ✭ 73 (+58.7%)
Mutual labels:  react-router, react-redux
React Sight
Visualization tool for React, with support for Fiber, Router (v4), and Redux
Stars: ✭ 2,716 (+5804.35%)
Mutual labels:  react-router, react-redux
OpenTrivia
Multiplayer quiz game demo using React and Opentdb API
Stars: ✭ 47 (+2.17%)
Mutual labels:  react-router, react-redux
react-cheat-sheet
📚 The perfect React Cheat Sheet for daily use with a lot of Javascript / JSX snippets !
Stars: ✭ 59 (+28.26%)
Mutual labels:  react-router, react-redux
ts-react-boilerplate
A very opinionated (React/TypeScript/Redux/etc) frontend boilerplate
Stars: ✭ 43 (-6.52%)
Mutual labels:  react-router, react-redux
awesome-web-react
🚀 Awesome Web Based React 🚀 Develop online with React!
Stars: ✭ 31 (-32.61%)
Mutual labels:  react-router, react-redux
Questions
Web app inspired by Quora, allowing users ask question and get answers
Stars: ✭ 15 (-67.39%)
Mutual labels:  react-router, react-redux
spring-boot-react-ecommerce-app
eCommerce application based on the microservices architecture built using Spring Boot and ReactJS.
Stars: ✭ 221 (+380.43%)
Mutual labels:  react-router, react-redux
kugou
multiple implementations for kugou music
Stars: ✭ 25 (-45.65%)
Mutual labels:  react-router, react-redux
react-laravel
A simple crud based laravel app to learn how to use react with laravel.
Stars: ✭ 43 (-6.52%)
Mutual labels:  react-router, react-redux
React-Playground
Learning reactjs from the ground up (router, redux, thunk, hooks, context, portals, and functional components)
Stars: ✭ 15 (-67.39%)
Mutual labels:  react-router, react-redux
PERN-Advanced-Starter
Advanced PERN stack starter kit (PostgresSQL, Express, React, & Node), complete with ESLint, Webpack 4, Redux, React-Router, and Material-UI kit.
Stars: ✭ 51 (+10.87%)
Mutual labels:  react-router, react-redux
laravel-react-boilerplate
Laravel React Boilerplate with Ant Design, Route-Level Code Splitting, Redux, Sanctum Auth
Stars: ✭ 49 (+6.52%)
Mutual labels:  react-router, react-redux

react-mobile-starter · PyPI Packagist

基于 react + redux + react-router 构建的移动端单页微应用,适合于react、redux、react-router核心概念的理解与掌握。

前言

这个项目是介于 vue-mobile-starter(vue版本) 之后并且完全仿照 vue-mobile-starter 功能、设计的 react版本。这个版本里引进了 dva 作为开发脚手架,使用 dva 作为开发框架主要原因之一是我司的 react 项目 大部分由 dva 框架 搭建,而且全部都经受住了线上压力的考验,有兴趣的同学可以深入研究,可以带入到公司项目的生产中去。以下是 dva 的官方说法:

经过一段时间的自学或培训,大家应该都能理解 redux 的概念,并认可这种数据流的控制可以让应用更可控,以及让逻辑更清晰。

但随之而来通常会有这样的疑问:概念太多,并且 reducer, saga, action 都是分离的(分文件)。

这带来的问题是:

编辑成本高,需要在 reducer, saga, action 之间来回切换

不便于组织业务模型 (或者叫 domain model) 。比如我们写了一个 userlist 之后,要写一个 productlist,需要复制很多文件。

还有一些其他的:

saga 书写太复杂,每监听一个 action 都需要走 fork -> watcher -> worker 的流程

entry 书写麻烦

...

而 dva 正是用于解决这些问题。

本项目虽说是一个十来个页面的小型项目,不过却涉及到 react 模块的全局和局部应用配置、第三方UI组件的使用、react-router、react-redux 的合理化配置和使用,非常适合于新手对 react 开发核心理念的掌握。

同一个项目用两种框架做最大的感触就是能明显感觉到两个框架之间的差异性,当你切身的体会了两者的差异性后,自然能够在不同的应用场景下选择合适的开发框架📌

欢迎提 issue

开源技术支持

  1. react:一个用于构建用户界面的 JAVASCRIPT 库
  2. react-routerreact 官方路由库.
  3. react-reduxreact 状态管理框架.
  4. dva支付宝 开发的基于 react + redux + react-router 的轻型框架
  5. roadhog:与 dva 搭配的命令行工具,包含 webpack,自带数据 mock 功能
  6. jsonplaceholder:一个简单的在线模拟 REST API 服务器
  7. axios:基于 Promise 的 HTTP 请求客户端,可同时在浏览器和 node.js 中使用
  8. Material-UIGoogle 使用 React 构建的设计UI组件

如何开发

# 克隆本仓库
git clone https://github.com/JohnsenZhou/react-mobile-starter.git

# 进入仓库目录
cd react-mobile-starter

# 安装依赖
npm install

# 启动项目,本地浏览地址 => localhost:8080
npm start

# 打包压缩
npm run build

Dva 框架

以下能帮你更好地理解和使用 dva

  1. 理解 dva8 个概念 ,以及他们是如何串起来的
  2. 掌握 dva所有 API
  3. 查看 dva 知识地图 ,包含 ES6, React, dva 等所有基础知识
  4. 查看 更多 FAQ,看看别人通常会遇到什么问题
  5. 如果你基于 dva-cli 创建项目,最好了解他的 配置方式

dva 框架中对数据流向的处理(见下图)

目录结构

.
├── README.md            // README文件
├── public               // 静态资源及index入口文件
├── node_modules         
├── package.json         // npm 配置文件
├── .roadhogrc           // roadhog 配置文件
├── .roadhogrc.mock      // roadhog Mock数据配置文件
├── src                  // 项目开发目录
│   ├── index.js         // 项目入口文件
│   ├── assets           // 资源文件夹
│   ├── components       // react通用组件
│   ├── router.js        // react-router配置文件
│   ├── router           // router对应页面
│   ├── services         // 接口文件
│   ├── utils            // js通用工具组件
│   └── models           // redux数据处理文件
└── LICENSE              // 证书

效果演示

在线浏览Demo请戳这里

  1. 项目通过阿里云部署
  2. 想了解详细部署过程的同学请浏览 此文档 同时请切换 release 分支

手机浏览请扫描下方二维码

在线浏览

License

MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].