惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Register - Security
The Register - Security
The Cloudflare Blog
Last Week in AI
Last Week in AI
月光博客
月光博客
Security Latest
Security Latest
Project Zero
Project Zero
博客园 - 司徒正美
AWS News Blog
AWS News Blog
雷峰网
雷峰网
博客园 - 聂微东
C
Cybersecurity and Infrastructure Security Agency CISA
P
Palo Alto Networks Blog
人人都是产品经理
人人都是产品经理
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Tor Project blog
Martin Fowler
Martin Fowler
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog RSS Feed
A
About on SuperTechFans
V
V2EX
P
Proofpoint News Feed
腾讯CDC
S
Schneier on Security
K
Kaspersky official blog
Google Online Security Blog
Google Online Security Blog
Recorded Future
Recorded Future
H
Hacker News: Front Page
Application and Cybersecurity Blog
Application and Cybersecurity Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
C
CERT Recently Published Vulnerability Notes
aimingoo的专栏
aimingoo的专栏
博客园 - 叶小钗
美团技术团队
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
V
Vulnerabilities – Threatpost
C
Cisco Blogs
PCI Perspectives
PCI Perspectives
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 【当耐特】
N
News and Events Feed by Topic
Google DeepMind News
Google DeepMind News
Hugging Face - Blog
Hugging Face - Blog
阮一峰的网络日志
阮一峰的网络日志
P
Privacy International News Feed
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
W
WeLiveSecurity
Spread Privacy
Spread Privacy
S
Securelist

TypeScript

ts 生态有没有开源的简单的 kv 配置管理项目 - V2EX 你们是怎么学习 typescript 的? - V2EX 用 Go 移植的 TypeScript 7 要来了 - V2EX TypeScript5.9,仿佛走出草原来到了现代社会 - V2EX Typescript 有没有能对接 AI 的知识库或者文档?能处理稍微复杂点的类型 - V2EX typescript 如何返回一个动态对象类型 - V2EX ts 有没有直接能查看最终类型的方法 - V2EX TypeScript Native 预览版发布了 - V2EX 关于 TypeScript 装饰器和接口的问题,请教一下各位 - V2EX effect-ts - V2EX typescript 达人乱入 - V2EX TypeScript 宣布原生移植计划,性能将提升 10 倍? - V2EX #笔记#更好的 ts 重载声明方法 - V2EX 使用 satisfies 实现穷举类型保护 - V2EX 请教一个 TS 问题,不知能否实现 - V2EX 装饰器能不能装饰类的所有方法 - V2EX TypeSciprt 类型推断,如何进一步收窄类型? - V2EX TypeScript 项目打包发布到 npm,如何给方法和接口添加 dts TypeScript 类型推导真强大。 - V2EX 为啥下面这段代码 TS 不报错 - V2EX ts 类型约束+请求参数校验+自动生成 openapi/swagger 文档,这三者目前有整合为一体的最佳实践吗 - V2EX TypeScript 能不能别这么古怪,这行为什么会报错呢? - V2EX 怎么每次碰到想不通的代码行都出在 TypeScript😢 这行到底哪里有问题? - V2EX 低估了 typescript 的难度 - V2EX 前端写 nestjs 后端,用 TypeORM 时感到非常困惑,不知道是不是我的理解有问题 - V2EX 我列举了市面上最好的几个 TypeScript 教程, 想深入学习 TypeScript 的同学以后不用走弯路了 - V2EX 这样的函数类型定义在 ts 里面叫什么? - V2EX typescript 如何忽略泛型参数啊? - V2EX TypeScript 现在的应用场景 - V2EX ==TypeScript 写的 npm 包可以用 javascript 使用包的函数吗 - V2EX react 如何优雅的实现批量删除+二次确认 - V2EX TypeScript 怎么 wrap 一个函数并修改一下返回值? - V2EX 想请教个 TypeScript 抽象类继承父类的问题。 - V2EX vscode 纯 js 项目有类型推断和成员变量提示,但是如果 ts 混用的话, js 导入就全变成 any 了,请问有办法解决吗 这个项目这样定义 Typescript 类型和使用,学到了,有几个问题? - V2EX 请教一个 Typescript 的问题 - V2EX 这种的类型是不是实现不了(TypeScript) - V2EX 问题一个 typescript 类型包裹问题 - V2EX 遇到了极其诡异的不符合进入 if 条件的要求但是还是进入了 - V2EX typescript 的类型处理 - V2EX 想问问大家 TypeScript 中关于 null 处理的方式 - V2EX 有没有声明 typescript 类型的好办法以及前端样式的健壮性问题 - V2EX typescript 类型断言问题 - V2EX TypeScript 中类型编程简介 - V2EX [求助] 类型 { K:V } --> { "type": K , "conf": V } 且约束 - V2EX 大佬们, vscode 开发 ts,这个地方的提示,怎么修改成中文啊 - V2EX TypeScript 中「类型定义的命名空间」使用 - V2EX 有没有办法把 ts 的 error 报错改成 warning - V2EX [求助] 函数中使用泛型缩小参数类型 - V2EX
你们 typescript 用自带枚举还是字符串枚举,感觉字符串枚举类型用起来有点不可靠啊 - V2EX
june4 · 2025-03-29 · via TypeScript

这是一个创建于 443 天前的主题,其中的信息可能已经有所发展或是发生改变。

比如:

type InputType = 'text' | 'number'
let e: InputType | undefined = 'text'
const getHtmlStr = (t: InputType | undefined) => `${t === 'text' ? 'type=text' : '...'}`

我给枚举来个重命名吧,把 'text' 改成 'text2',下面用到的地方全都没有改过来,要手动改。

xuld

1

xuld      2025 年 3 月 29 日

使用“枚举”还是“字符串联合类型”,关键看目的是强调类型还是强调值。

1. 枚举需要记忆枚举的名字,不需要记忆具体有哪些项(因为可以点出来
2. 字符串联合需要记忆具体的内容,且内容和程序逻辑有密切关系

至于你说的重命名没有自动改过来,这只是实现的一个差异,未来可能会被抹平,但不应该为了这点差异而影响用谁的决策

AV1

2

AV1      2025 年 3 月 29 日

用 object as const 。

还有最新的 TS 5.8 推出了 erasableSyntaxOnly 开关,会禁用 enmu 语法,我觉得淘汰 enum 可能是大势所趋了。

june4

3

june4      2025 年 3 月 29 日

@xuld 枚举也不用记名字啊,vscode 参数补全可以弹出来枚举名字并在第一位,用起来和字符串没多大差别。而字符串到处传来传去心里不踏实,总得会丢掉枚举的类型约束,肉眼也看不出来。

june4

4

june4      2025 年 3 月 29 日

@DOLLOR enum 要废弃确实有点不爽,ts 应该把 enum 关键字和 object as const 来个缝合,把 enum 当成 object as const 的纯语法糖而不是生成新结构。

nowtg

5

nowtg      2025 年 3 月 29 日 via iPhone

字符串改起来费劲。用枚举和对象都行吧

june4

6

june4      2025 年 3 月 29 日

@liuw666 可是对象不受 ts 特殊加持对待,没有枚举完美。比如
const Direction = {
Up : 'up',
Down: 'down',
Left: 'left',
Right: 'right',
} as const
type Direction = typeof Direction[keyof typeof Direction]

你要用到 Direction 类型的时候,补全不象 enum 一样让你知道这里要填个 Direction.xxx ,而是直接是字符串 'up', 'down'之类的,很容易让人误用。

jsq2627

7

jsq2627      2025 年 3 月 29 日

感觉大多数开源库倾向用字符串

chenliangngng

10

chenliangngng      2025 年 3 月 29 日

我也有这个疑问,ts 对对象字面量和枚举支持不好,很难用,虽然 enum 不符合 ts 的初衷,但是转换成对象确实可以解决枚举的问题,否则所有枚举的地方都要声明两次