Opportunity

Opportunity

V2EX 第 378092 号会员,加入于 2019-01-17 11:20:48 +08:00
根据 Opportunity 的设置,主题列表只有在你登录之后才可查看
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
Opportunity 最近回复了
24 天前
回复了 lqzhgood 创建的主题 TypeScript [求助] 函数中使用泛型缩小参数类型
https://imgur.com/a/dVFMfeW

不过 intellsense 说明 TS 团队推荐的写法就是这个
24 天前
回复了 lqzhgood 创建的主题 TypeScript [求助] 函数中使用泛型缩小参数类型
我的意思是,调用方这样写:
```
const t: TAP_TYPE = TAP_TYPE.LOCAL
test(t, {b:'xx'})
```
TS 不会报任何错误,运行时会炸。用函数重载可以在运行时就报错。

如果你硬要把接口搞成这样,就要想办法告诉 TS 两个参数的联系,比如这样写:

```
function test(...[t, v]: [t: TAP_TYPE.LOCAL, v: TAP_LOCAL] | [t: TAP_TYPE.MAP, v: TAP_MAP]) {
switch (t) {
case TAP_TYPE.LOCAL:
return v.a;
case TAP_TYPE.MAP:
return v.b;
}
}
```
但是说实话,太丑了,我更倾向于用 as
26 天前
回复了 lqzhgood 创建的主题 TypeScript [求助] 函数中使用泛型缩小参数类型
当 T=TAP_TYPE 有 t: TAP_TYPE, v: TAP_LOCAL | TAP_MAP 。
此时,t 和 v 没有任何关系,你对 t 再怎么判断也不应当影响 v 的类型,我觉得 ts 的推断没有任何问题。

我觉得断言已经是最好的方案了,接口上你可以选择使用重载代替泛型,避免 T=TAP_TYPE 这种情况,实现没啥好办法。
Chrome 有这功能,不过还在开发阶段

https://github.com/GoogleChromeLabs/telnet-client
为啥要硬分叉+detach fork 呀?和原作者有啥过节吗?
83 天前
回复了 semistack 创建的主题 宽带症候群 吸顶式 AP 如何布线开槽?
我的 AP 塞在吊顶里,用着也还好
直接在 release 页面那里复制下载链接,那个是永久有效的链接,你自动捕获的下载链接是那个链接跳转以后生成的临时有效的链接
为啥不直接用 EventSource 读,要自己手写这玩意?非要手写的话可以去参考下 EventSource 的 polyfill 怎么实现的。
96 天前
回复了 Dedicatus545 创建的主题 NAS XDM 救大命
> sudo chown -R acme / usr/local/share/acme.sh/

/ 和 usr 中间多了个空格?是 V2EX 格式化的还是你真执行了?
我已经放弃了,手机挂代理随便更,PW 开全局都不好使。。。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1960 人在线   最高记录 6067   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 263ms · UTC 06:15 · PVG 14:15 · LAX 23:15 · JFK 02:15
Developed with CodeLauncher
♥ Do have faith in what you're doing.