gpt4 book ai didi

javascript - 部分类型的参数不能分配给类型的参数

转载 作者:行者123 更新时间:2023-12-05 00:26:32 27 4
gpt4 key购买 nike

我正在尝试更新 TypeScript 中接口(interface)之一的部分属性,如下所示

interface details{
name: string,
phonenumber: number,
IsActive: boolean
}

let pDt: Partial<details> = {IsActive: false};
当我试图通过它时,其中一种方法具有 details作为参数,它给出了以下问题“ Partial 类型的参数不可分配给'detail' 类型的参数”。
这里有什么问题以及如何纠正?

最佳答案

Argument of type Partial is not assignable to parameter of type 'detail'


您不能将类型的 Partial 分配给您从中创建部分的原始类型。
interface Details{
name: string,
phonenumber: number,
IsActive: boolean
}

let partialDetails: Partial<Details> = {IsActive: false};
let details: Details = partialDetails // error
Playground
这是有道理的,因为 Details期望所有属性的值,但 Partial<Details>可以省略任何这些属性。这使得部分与您制作部分的 while 类型不兼容。
没有简单的“解决”这个问题。这取决于您的应用程序的逻辑。如果你有一个函数需要一个完整的 Details那么你必须通过它一个完整的 Details , 一个 Partial<Details>不行。

关于javascript - 部分类型的参数不能分配给类型的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63507831/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com