# CloudCenter3 **Repository Path**: EngineChina/CloudCenter3 ## Basic Information - **Project Name**: CloudCenter3 - **Description**: CloudCenter3 UI lib Taro.js 组件库 - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 1 - **Created**: 2020-04-22 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

CloudCenter3

## 开发者信息 * 系统名称:CloudCenter3 * 作者:[南风](http://github.gold)、[丹阳](#)、[铁血幻城](#)、[义儿]](#) * 官网网址:[http://cloudcenter.github.gold](http://cloudcenter.github.gold) * 文档网址:[http://cloudcenter.github.gold/docs](http://cloudcenter.github.gold/docs) ### todo: 1. 把自己的博客补全 2. 补全文档库 3. 找一个文档仓库,记录开发总的注意事项。 4. 考虑到用户存在没有网络的情况,所以得到的数据放到 storage 里面,如果网络连接失败的情况,APP端是可以直接获取本地缓存数据并展现的。 5. 准备优化storage能力,涉及到很多的同步异步问题需要好好处理。 ## 环境要求: * Node.js >= 10.0.0 * MongoDB >= 6.0 ## 开发环境 * IDE >= VSCode * Git >= SourceTree ### 关于测试数据 #### Mock Link [EasyMock](https://www.fastmock.site/#/project/8359) 这是一个免费的在线Mock文档库,没有money,只好用免费的。然后注册好了私信群里加入项目。 #### Api 接口设计规范 ``` json { // 请求成功 "status": "ok", } ``` ### 关于开发规范 #### 开发环境(*可选) 1. Eslint 2. GitHistory & *GitLens 3. *color highlight 4. *Auto Close Tag 5. *Auto Rename Tag 6. ESLint (with `autoFixOnSave: boolean | string[]`) #### 命名 1. 统一采用`驼峰命名`规则。 2. 对于类可以首字母大写。 3. 方法名称需要著名对应功能,比如get、click、fetch等 4. 标签的属性名称统一使用`单引号`。 5. 所有语句都去掉`;`。 #### 缩写 统一缩写,这里列出来常见等可用缩写内容: | 序号 | 缩写 | 表示 | 描述 | | ------ | ------ | ------ | ------ | | 1 | v | value | 一些参数的值统一采用缩写v | | 2 | t | type | type的简写 | | 3 | rq | request | 请求 | | 4 | rs | result/respons | 返回值 | ### 模块 #### 获取用户IP地址 * 废弃 使用这个方法会报错,目前还没空去解决它。 ``` html ``` 错误信息 ``` Console A cookie associated with a cross-site resource at http://sohu.com/ was set without the `SameSite` attribute. A future release of Chrome will only deliver cookies with cross-site requests if they are set with `SameSite=None` and `Secure`. You can review cookies in developer tools under Application>Storage>Cookies and see more details at https://www.chromestatus.com/feature/5088147346030592 and https://www.chromestatus.com/feature/5633521622188032. ``` #### 状态管理 (@tarojs/mobx) MobX 为复杂项目中状态管理提供了一种简单高效的机制;Taro 提供了 @tarojs/mobx 来让开发人员在使用 MobX 的过程中获得更加良好的开发体验。 [教程](http://www.geekjc.com/post/5cab191109719f65d90cd3c4) ##### 简单的使用方法: 安装模块 ```bash $ yarn add mobx@4.8.0 @tarojs/mobx @tarojs/mobx-h5 @tarojs/mobx-rn # 或者使用 npm $ npm install --save mobx@4.8.0 @tarojs/mobx @tarojs/mobx-h5 @tarojs/mobx-rn ``` ```jsx // src/store/counter.js import { observable } from 'mobx' const counterStore = observable({ counter: 0, counterStore() { this.counter++ }, increment() { this.counter++ }, decrement() { this.counter-- }, incrementAsync() { setTimeout(() => { this.counter++ }, 1000) } }) export default counterStore ``` #### 统一的全局变量(golbalData)模块 ``` javascript Taro.galbalData(key,value) ``` 单独传key情况下视为获取全局变量方法,传了key、data的情况下视为设置全局变量,key、value均不传视为清理全局变量方法。 #### 统一的request模块 ``` javascript Taro.rq({url:xxx,method:'POST',data:{}}).then(row=>console.log(row)) ``` method可以不传,默认情况下视为`GET`方法,支持`promise` #### 统一的localstorage模块 ``` javascript Taro.storages(name,data) ``` 单独传key情况下视为`getStorage`方法,传了key、data的情况下视为`setStorage`,不传key、data的情况下视为`clearStorageSync`,支持`promise`。 #### 统一的router模块 ``` javascript // 基本路由跳转 path是目标地址,只需要index/index,无需填写全部路径。data为传值的内容 Taro.R.goto(path, data) // 重置路由跳转,无历史记录,不可返回。 Taro.R.reto(path, data) // 返回上一页,上几页。默认num不传值情况为返回上一页。 Taro.R.backto(num) ``` #### utils模块 todo:丹阳 > util: https://juejin.im/post/5de5be53f265da05c33fcbb4 #### Sass模块 todo:幻城 > 往app.sass中添加内容,可以参照全栈之巅教程中的第三章前面几节内容,然后好好百度,抓紧时间开发! ### 技术栈 - **Node.js:** Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时。[[访问中文网]](http://nodejs.cn/) - **express.js:** 基于 Node.js 平台,快速、开放、极简的 Web 开发框架。[[访问官网]](http://www.expressjs.com.cn/) - **MongoDB:** MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 基于分布式文件存储的数据库 高性能、可扩展、易部署、易使用,存储数据非常方便。[[访问官网]](https://www.mongodb.com/) - **Mongoose:** Mongoose为模型提供了一种直接的,基于scheme结构去定义你的数据模型。它内置数据验证, 查询构建,业务逻辑钩子等,开箱即用。[[访问中文官网]](http://mongoosejs.net/) - **Vue.js:** 结构清晰、代码规范、在开发快速的同时还兼顾性能的极致追求。[[访问中文官网]](https://cn.vuejs.org/) - **Element-ui:** 权限管理、组件丰富、第三方应用多、分层解耦化设计和先进的设计思想。[[访问官网]](https://element.eleme.cn/) - **React.js:** React 使创建交互式 UI 变得轻而易举。为你应用的每一个状态设计简洁的视图,当数据改变时 React 能有效地更新并正确地渲染组件。 以声明式编写 UI,可以让你的代码更加可靠,且方便调试。 [[访问官网]](https://react.docschina.org/) - **Taro.js:** Taro 是凹凸实验室开发的多端统一开发解决方案。 [[访问官网]](https://taro.aotu.io/) - **Taro-ui:** 一套基于 Taro 框架开发的多端 UI 组件库 [[访问官网]](https://taro-ui.jd.com/) ## 项目演示 ## 部署说明 部署教程 ## 数据库模型说明 ``` javascript Article //文章模型 Auth //邮箱验证模型 Category //分类模型 Cloud //云盘保存账户模型 CloudResouse//云资源模型 Configure //系统设置模型 Menber //会员模型 MenberDetile//会员基本资料模型 Navigation //导航数据模型 Swiper //跑马灯数据模型 UserLocked //会员解锁数据模型 UserLove //会员收藏模型 UserVip //超级会员模型 ``` ## 安全&缺陷 如果你发现了一个安全漏洞或缺陷,请发送邮件到 3206107745@qq.com,所有的安全漏洞都将及时得到解决。 ## 版权信息 EngineChina 提供个人非商业用途免费使用,商业需授权。 版权所有Copyright © 2020 EngineChina(GitHub.Gold) (http://GitHub.Gold) All rights reserved。 更多细节参阅 [LICENSE.txt](LICENSE.txt)