当前位置: 首页 > 知识库问答 >
问题:

无法将空对象设置为具有类型记录的参数的默认值

充高扬
2023-03-14
type SimpleObject = Record<string, any>
<T extends SimpleObject>(param: T = {}) => param
                         ^^^^^^^^^^^^^ 

TS2322:类型{}不可分配给类型“T”。

共有1个答案

谷梁俊楚
2023-03-14

TypeScript不知道T的形状,它可能匹配也可能不匹配,因此您需要明确说明您知道T是,如下所述:

TS游乐场链接

type SimpleObject = Record<string, any>
<T extends SimpleObject>(param: T = {} as T) => param
 类似资料:
  • 我正在尝试为下面的json创建avro模式 错误对象是可选的,它可能是“错误”:{}下面是没有默认值的avro模式 如何在json中添加错误字段的默认值{}。

  • 我在Thymeleaf模板中的样式标记内设置CSS字体变量。字体值来自模型对象。我还想应用默认颜色,以防模型attirbute不存在。我使用elvis运算符选择默认值elvis运算符链接 但是当我呈现模板时,它会搜索brandingConfig,然后是themeConfig,然后是fontName,但fontName在themeConfig中不存在。因此,它不会选择默认值,而是抛出一个错误。下面是

  • 我想在Oracle对象类型中设置默认值,但它需要在构造函数中传递所有属性。 是否存在,以便我可以只传递构造函数中需要默认值的必需属性。 请参阅以下详细信息 现在,在上面的例子中,若我只在构造函数中传递Col3和Col4属性作为默认值,那个么它就不起作用了。请参见下面的示例。

  • 这适用于顶级对象,但不适用于嵌套对象。例如,如果嵌套对象是特殊对象,则仍将其反序列化为公共对象。 我想做的是告诉Jackson:“无论嵌套级别如何,如果ObjType=Special,使用SpecialObject,否则使用GeneralObject”。我研究了多态反序列化,并尝试使用@JSONSubtypes,但无法正确设置该逻辑。如何确保特殊对象被反序列化到适当的类中,即使它们是嵌套的?

  • 我试图理解下面的代码片段 当使用指针类型示例int*调用时,默认参数是如何工作的? 当obj1.test()被调用时,编译器将生成什么。我得到一个编译器错误当我尝试

  • 我正在使用postgreSQL 9.3.1,spring 4和JPA 1.9进行我的项目。我需要使用下面的JPA代码为数据库中的一列设置默认值。此外,我还尝试在代码中传递数据类型“整数”和“int”。但仍然没有设置默认值。任何人都可以建议我缺少什么或我需要为JPA 1.9做任何设置吗? 提前感谢。 @Column(name=“cust_id”,columnDefinition = “int def