{"id":18332175,"url":"https://github.com/canfoo/react-taopiaopiao","last_synced_at":"2025-04-09T10:09:56.524Z","repository":{"id":239783161,"uuid":"81792224","full_name":"canfoo/react-taopiaopiao","owner":"canfoo","description":"react+router+redux+express 构建淘票票的全栈demo","archived":false,"fork":false,"pushed_at":"2018-02-22T03:14:55.000Z","size":14057,"stargazers_count":285,"open_issues_count":0,"forks_count":110,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-04-02T03:41:42.712Z","etag":null,"topics":["express","react","redux"],"latest_commit_sha":null,"homepage":null,"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/canfoo.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":"2017-02-13T06:26:17.000Z","updated_at":"2025-02-22T13:44:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"8783d061-20ea-4f95-b7ae-f327749d3ecc","html_url":"https://github.com/canfoo/react-taopiaopiao","commit_stats":null,"previous_names":["canfoo/react-taopiaopiao"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canfoo%2Freact-taopiaopiao","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canfoo%2Freact-taopiaopiao/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canfoo%2Freact-taopiaopiao/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canfoo%2Freact-taopiaopiao/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canfoo","download_url":"https://codeload.github.com/canfoo/react-taopiaopiao/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248018061,"owners_count":21034048,"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":["express","react","redux"],"created_at":"2024-11-05T19:37:51.321Z","updated_at":"2025-04-09T10:09:56.503Z","avatar_url":"https://github.com/canfoo.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# react与express构建淘票票页面\n### [vue2.0构建淘票票，请点击这里](https://github.com/canfoo/vue2.0-taopiaopiao)\n### [react-native构建淘票票，请点击这里](https://github.com/canfoo/react-native-taopiaopiao)\n\n## 描述\n前段时间用[vue2.0构建的淘票票app](https://github.com/canfoo/vue2.0-taopiaopiao)，得到许多童鞋的支持，这些天一气呵成用react又来重构一下这个项目，目的无他，在于分享和共同进步！因此这个项目与[vue2.0-taopiaopiao](https://github.com/canfoo/vue2.0-taopiaopiao)项目的结构是一致的，项目中同样个server服务，模拟服务器环境，为前端提供数据来源，当用`npm run deploy`命令运行前端环境时，就可以直接将前端资源部署到server服务里。因此本项目有两个环境，一个是前端开发环境(端口是3000)，一个是server服务环境(端口是9000)。\n\n主要技术栈：\u003cbr/\u003e\n- react\n- react-router\n- redux\n- ant-design-mobile\n- nodejs\n- express\n\n## 如何运行\n下载项目\n```\n git clone https://github.com/canfoo/react-taopiaopiao.git\n```\n 打开一个终端（称这个终端为A终端）进入到react-taopiaopiao目录安装依赖包（注意：如果`npm install` 不能正常安装完成，请使用`cnpm install`进行安装）\n```\n npm install\n```\n 打开另一个一个终端（称这个终端为B终端）进入到server目录安装依赖包\n```\n npm install\n```\n启动server服务（得先启动后台服务，否则前端页面没有数据），在server目录（B终端）下执行以下命令，成功执行会终端会提示服务端口号为9000\n```\n npm run start\n```\n启动前端开发服务，在react-taopiaopiao目录（A终端）里执行以下命令，成功执行后，会自动打开浏览器访问前端开发环境，浏览地址是`http://localhost:3000`\n```\n npm run dev\n```\n前端资源部署到server里，开发完成后，在react-taopiaopiao目录里执行以下命令，成功执行后，可以通过访问server提供的路径访问到页面了，访问路径为`http://localhost:9000/app`\n```\n npm run deploy\n```\n\n备注：因为本项目有提供后台服务，所以当前端部署到服务器后，只要后台服务启动，就可以直接通过`http://localhost:9000/app`路径访问到前端页面，无须再启动前端的开发服务。\n\n## 项目预览\n![Mou icon](./Screenshots/1.gif)\n\n## 主要目录结构\n```\n.\n├── bin                      # 启动脚本\n├── build                    # webpack相关配置\n├── config                   # 项目配置文件\n├── server                   # 后台服务\n│   ├── bin                  # 程序启动和渲染\n│   ├── database             # 存放页面所需要的json数据\n│   ├── public               # 前端静态资源存放位置\n│   ├── routes               # 路由于请求接口管理\n│   ├── views                # 前端模板存放位置\n│   ├── app.js               # 后台服务入口\n├── src                      # 程序源文件\n│   ├── main.js              # 程序启动和渲染\n│   ├── components           # 全局组件\n│   ├── containers           # 路由页面容器组件\n│   ├── layouts              # 主页结构\n│   ├── static               # 静态文件\n│   ├── styles               # 样式文件\n│   ├── store                # Redux管理\n│   └── routes               # 前端路由管理\n└\n```\n\n## 后台接口\n本项目是手动抓取淘票票部分数据，数据是16年12月份的，城市数据只有北上广有数据，其它城市都是随机从北上广数据抽取过来的，电影数据也是部分有数据。抓取的数据存放在server目录里的database里，供前端调用。\n\n1. 访问淘票票首页路径： `http://localhost:9000/app`\n\n2. 部分数据接口\n\t- 获取热映数据\n\t```\n\tmethod: GET\n \turl: http://localhost:9000/movie/hot/?city=bj\n \t参数说明: city可以为bj、sh、gz\n\t```\n\t- 获取即将上映数据\n\t```\n\tmethod: GET\n \turl: http://localhost:9000/movie/coming/?limit=20\u0026offset=0\n \t参数说明: limit为每次请求的数据数量，offset为所有数据的偏移量\n\t```\n\t- 获取城市数据\n\t```\n\tmethod: GET\n \turl: http://localhost:9000/movie/city\n\t```\n\t- 获取电影院数据\n\t```\n\tmethod: GET\n \turl: http://localhost:9000/movie/cinema/?city=bj\n \t参数说明:  city可以为bj、sh、gz\n\t```\n## 项目博客地址\n如果对项目有疑惑的地方，请到[http://www.cnblogs.com/canfoo/p/6394761.html](http://www.cnblogs.com/canfoo/p/6394761.html)里留言。如果觉得这个项目对你有帮助的话，请Star一下本项目，这是对作者最大的支持。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcanfoo%2Freact-taopiaopiao","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcanfoo%2Freact-taopiaopiao","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcanfoo%2Freact-taopiaopiao/lists"}