为什么与对象散布合并的对象发生类型错误

问题描述 投票:0回答:1

我有一种类型的实体对象,例如User,我想创建具有默认值的工厂函数。

[与下面类似,但createUser1将引发错误,而冗余的createUser2将没有错误。为什么?

export type User = {|
  name: ?string
|};

// error
export const createUser1 = (values: User): User => {
  return {
    name: 'john',
    ...values
  }
}

// no error
export const createUser2 = (values: User): User => {
  return {
    ...{
      name: 'john',
    },
    ...values
  }
}

Try Flow (v0.104.0)上的复制示例

flowtype
1个回答
0
投票

此行为已在Flow v0.111.0上修复,因此这可能是一个错误!

© www.soinside.com 2019 - 2024. All rights reserved.