当前位置: 首页 > 后端技术 > Node.js

总结会议技巧:NodeJs后台+FlutterforAndroid、AppleApp+H5端+微信小程序+web端管理后台

时间:2023-04-03 12:17:13 Node.js

突然:我想总结一下我知道的知识。如何聚合?1.写一个新项目,把你知道的所有技能都用上2.记录在sf上,立个flag。同时自我督导多端开发确实很累,但是改善还是挺明显的:没有人急于求成(经常被公司压榨?),遇到问题可以尝试寻找最优尽可能多的解决,加深对不熟悉地方的印象等等。实践技术栈及其他规划1.后端:NodeJS后端、mongoDB、Redis2。C端:使用FlutterforiOS和Android(使用闲鱼的fish_redux),TaroJS实现微信小程序和H53。管理后台:React实现,Ant-DesignUI(毕竟漂亮)4.运维:docker部署,域名,七牛CDN存储图标,文件等静态资源。1、后台配置“资源”(图片、标题、点击栏转发的h5/app路由地址)2、配置“资源”关联多个“资源”,比如“banner资源”,由多个图片资源3.配置业务场景,关联多个资源位置,比如“首页场景”,由多个资源位置组成:banner资源位置,盒子资源位置等,App和h5端只需要请求“首页场景”数据。后期扩展:在首页开发多个资源位样式即可。在首页做了一波简单的缓存:1.后端策略:在首页查询数据时,先从redis中获取。如果redis中没有数据,那么从mongodb中查看。找到数据后,将数据存入redis,5分钟后过期。2、App端策略:获取首页数据后,使用shared_preferences库持久化数据,存储到本地。请求接口失败时在本地获取。只需粘贴伪代码:backend//controllerasyncshow(){const{ctx,service,app}=thisconst{code}=ctx.request.bodyletret=nullconst_redis=app.redis.get('defaultDB');//配置了多个redisdbs,所以先.get('dbname')然后运行??try{ret=JSON.parse(await_redis.get(code.toString()))}catch(e){ctx.throw('数据解析错误')}if(!ret){//redis中没有首页数据,这里查看mongodbret=awaitservice.businessScene.findOne('...omitted')//找到后保存到redisawait_redis.set(code.toString(),JSON.stringify(ret),'EX',5*60)//5分钟后过期}this.success(ret||{})}应用端/代码中/fish_redux的effect.dartvoid_onFetchHomeData(Actionaction,Contextctx,{dynamicpayload})async{SharedPreferencesprefs=awaitSharedPreferences.getInstance();动态家庭数据;尝试{varres=awaitfetchResourcesGroup({'code':1});//请求接口if(res['success']){//接口正常返回homeData=res['data'];列出resourcesGroup=homeData['resourcesGroup']??[];//允许出错了,返回字段resourcesGroup.sort((a,b)=>b['sort']-a['sort'])出现问题时后台不会崩溃//首页资源按排序字段排序homeData['resourcesGroup']=resourcesGroup;awaitprefs.setString(prefsKeyMap['homeData'],convert.jsonEncode(homeData));//主页数据缓存在本地}}catch(e){print('error:$e');}if(homeData==null){//当请求或接口报错时在本地获取值homeData=convert.jsonDecode(prefs.getString(prefsKeyMap['homeData']))??{};}ctx.dispatch(HomeActionCreator.setHomeData(homeData));//存储数据}个人中心//TODO个人数据展示编辑社区//TODO目前进展1.App端动态加载当前banner资源样式和box资源样式2.管理后台:从资源=>资源位=>业务场景配置,后台用户增删改查3.后端:资源,资源位,业务场景配置增删改查,后台用户系统增删改查4.h5无进展小程序后面继续补充,先上进度图: