当前位置: 首页 > news >正文

做阿里巴巴网站需要多少钱如何进行公司网站的建设

做阿里巴巴网站需要多少钱,如何进行公司网站的建设,网站图片链接是怎么做的,口红网络营销策划方案一、为什么需要策略模式#xff1f; 作为前端程序员#xff0c;我们经常会遇到这样的场景#xff0c;例如 进入一个营销活动页面#xff0c;会根据后端下发的不同 type #xff0c;前端页面展示不同的弹窗。 async getMainData() {try {const res await activityQuery()…一、为什么需要策略模式 作为前端程序员我们经常会遇到这样的场景例如 进入一个营销活动页面会根据后端下发的不同 type 前端页面展示不同的弹窗。 async getMainData() {try {const res await activityQuery(); // 请求后端数据this.styleType res.styleType;if (this.styleType STYLE_TYPE.Reward) {this.openMoneyPop();}else if (this.styleType STYLE_TYPE.Waitreward) {this.openShareMoneyPop();} else if (this.styleType STYLE_TYPE.Poster) {this.openPosterPop();} else if (this.styleType STYLE_TYPE.Activity) {this.openActivityPop();} else if (this.styleType STYLE_TYPE.Balance) {this.openBalancePop();} else if (this?.styleType STYLE_TYPE.Cash) {this.openCashBalancePop();}} catch (error) {log.error(MODULENAME, 主接口异常, JSON.stringify(error));} } 我们在写的时候也许不觉得但是当我们去维护别人的代码时这个代码的话看了就想打人未来新增一种弹窗类型的话我们需要到 getMainData 内部去补一个 else if一不小心可能就会影响到原有的逻辑并且随着迭代函数会越来越大。但其实每种弹窗是相互独立的我们并不关心其他弹窗的逻辑。 此时就需要策略模式了。 二、策略模式是什么 1.定义策略模式作为一种软件设计模式 (opens new window)指对象有某个行为但是在不同的场景中该行为有不同的实现算法。 策略模式 定义了一族算法业务规则封装了每个算法这族的算法可互换代替interchangeable 2.运用借助策略模式的思想我们可以尝试这样写 const strategies {FirstStrategy() {console.log(Called FirstStrategy);},SecondStrategy() {console.log(Called SecondStrategy);},ThirdStrategy() {console.log(Called ThirdStrategy);} }const execute (strategy) {return strategies[strategy](); }execute(FirstStrategy) execute(SecondStrategy) execute(ThirdStrategy) 将不同的处理逻辑都放到strategies这个对象里面去统一维护然后通过给execute这个方法传递不同的strategy参数然后通过统一的strategies[strategy]去根据参数匹配不同的处理逻辑。 三、提炼优化 当我们要处理的情况较多时如果将所有的代码都写到一个文件中看上去还是会有些臃肿这个时候我们就要考虑是否可以将业务代码与逻辑处理代码分离开来于是就有了进一步的优化如下 1.我们可以将不同类型的处理逻辑代码全都拿到一个单独的文件当中然后给出一个统一的函数去供业务使用 const popTypes {[STYLE_TYPE.Reward]: function() {...},[STYLE_TYPE.Waitreward]: function() {...},[STYLE_TYPE.Poster]: function() {...},[STYLE_TYPE.Activity]: function() {...},[STYLE_TYPE.Balance]: function() {...},[STYLE_TYPE.Cash]: function() {...}, }export function openPop(type){return popTypes[type](); } 2.在我们需要的文件当中引入上面的配置文件 import { openPop } from ./popTypes; 3.在拿到不同参数时再去根据参数调用方法 async getMainData() {try {const res await activityQuery(); // 请求后端数据openPop(res.styleType)} catch (error) {log.error(MODULENAME, 主接口异常, JSON.stringify(error));} } 现在我们的代码是不是看上去就非常的清晰了呢嘿嘿~~
http://www.dnsts.com.cn/news/125243.html

相关文章:

  • 免费网站建设无广告为什么公司网站打不开
  • 惠州网站建设电话无网站做cpa推广
  • 电子商务网站建设期末试卷答案淘客推广
  • 网站能看出建设时间吗企业网站的建立要做的准备
  • 做网站开发要安装哪些软件wordpress自定义页面插件
  • 网站推广有哪些优势wordpress中文企业模板
  • 哪些网站可以做企业推广建设俄语网站
  • 学做网站前景近期热点话题
  • 小荷特卖的网站谁做的西安wordpress
  • 百度网址大全百度一下你就知道郑州seo外包v1
  • 重庆平台网站建设设计个人做电梯网站
  • 提供免费建网站的网网站建设管理情况汇报
  • 网站设计怎么做图片透明度dw8做网站步骤图
  • 网站建设购物商城普通网站建设的缺陷
  • 关于加强网站建设工作的意见如何做com的网站
  • 专门做自助游攻略的网站是哪个安徽哪家公司做网站比较好
  • 在公司平台做网站竞拍div网站模板
  • 中山建网站报价免费民事法律咨询
  • 忻州市住房城乡建设局网站wordpress 高亮
  • 牡丹江建设工程信息网站有限公司注册资金
  • 网站后台验证码不正确2345网址大全
  • 旅游网站html5代码陕西公共资源交易中心
  • 广告公司网站设计策划阿里巴巴官网电脑版
  • 网站平台开发报价表怎么做如何屏蔽百度广告推广
  • 免费信息发布网站大全响应式网站企业
  • 网站创建服务公司wordpress旅游类网站模板
  • 国家林业工程建设协会网站电商网站怎么做与众不同
  • 事业单位网站备案项目网址大全
  • 装修平台网站有哪些贵州省冶金建设有限公司网站
  • 为什么实验楼网站上做实验这么卡微服务网站