Bug报告
🔎 搜索词
🕗 版本与回归信息
- 这是一次崩溃
- 在版本______和______之间发生了变化
- 这是我尝试的每个版本中的行为,我查阅了关于:常见问题解答中的“不是bug的bug”、FAQ中的所有其他标题的条目。已通过 👍
- 由于______,我无法在之前的版本上测试此问题。
⏯ Playground链接
带有相关代码的Playground链接
💻 代码
new URLSearchParams([["ok", "ok", "NOT_ok"]]);
// ^^ can't handle more than two elements
😞 实际行为
TypeScript允许任何长度的数组作为参数,但这会抛出JS运行时错误。
当前: string[][] 👎
🙂 预期行为
如果产生JavaScript运行时错误,TypeScript应该警告错误的参数。
建议: [string, string][] 👍
值得注意的是,@node/types
处理此错误:@node/types URLSearchParams构造函数
如果这个问题被积压,即将有PR到来 🙇
2条答案
按热度按时间wkyowqbh1#
重复的#43738。使用的搜索词:
urlsearchparams in:title
rfbsl7qr2#
@MartinJohns - 感谢您的及时回复
#43738 引用了
value
搜索参数,而不是允许运行时错误的 issue。WebIDL 规范使用sequence<sequence<USVString>>
来描述可接受的参数。这产生了类型string[][]
。在 URLSearchParams.idl 的解释中,它指出如果 pair 不包含恰好两个项目,则抛出 TypeError。 // <~ string[][] 应该报错