vite+ts+vue3采用策略思想锁定当前处于哪一条线(location/dev/test/product)

要判断当前处于哪一条线,是很多前端都会遇到的问题,判断的方式也是千奇百怪的。但是每个人都想写出简洁的代码这是毋庸置疑的,首先我们可以使用switch来判断hostName,但是这样写出来的代码结构性太严重,比较笨重,所以我们选择了用对象来订制我们的策略集,再建一个工具选择的行为函数,这样写出来的代码,后续要改动的话也是极其方便的。

案例

interface HostMap {
  [propName: string]: string
}

const hostMap: HostMap = {
  'local.com': 'http://local.com:8099/#/',
  'dev-cmicloud.com': 'https://dev-cmicloud.com/console/#/',
  'test-cmicloud.com': 'https://test-cmicloud.com/console/#/',
  'mi.com': 'https://mi.com/console/#/'
}

// 策略模式
let hostName = window.location.hostname
const getUrl = (hostName: string) => {
  return hostMap[hostName]
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值