typescript - 使用属性定义 Typescript 类型,然后定义任何其他键,但属于递归类型
问题描述
type ParameterInfo = {
required?: true;
pattern?: RegExp;
// other known keys
[otherKeys: string]: ParameterInfo;
}
所以我可以在它下面有一个ParameterInfo
0-many 嵌套ParameterInfo
的 s,例如:
{
user: { // this is a ParameterInfo
required: true,
username: { // I'm a ParameterInfo, too
required: true,
pattern: /.../,
},
password: { // I'm a ParameterInfo, too
required: true,
},
},
}
使用顶部的类型定义,所有已知键(例如required
, pattern
)都会突出显示并显示错误:
'true' 类型的属性 'required' 不可分配给字符串索引类型 'ParameterInfo'。ts(2411)
解决方案
推荐阅读
- c# - 对象引用未设置为反序列化 json 数据中的对象实例
- python - 熊猫删除 for 循环
- python - 熊猫数据框日期时间比较代码中的错误?
- asp.net-web-api - 关于 HTTP 动词的所有可能性的问题
- java - 远程主机终止了 Java 中的握手
- pyspark - 手动选择镶木地板分区与在 pyspark 中过滤它们
- java - 如何让 swagger 获取 api 定义 yaml 文件?
- r - 需要帮助理解“因子”函数 - factor(1 * (tmpd > 80), labels = c("cold","hot"))
- sql-server - Amazon DMS 能否在更改 Kafka 前后生成记录状态?
- python - 如何在“fit”调用期间调试 TensorFlow logits/标签形状问题?