簡體   English   中英

typescript 給出的屬性缺少類型

[英]typescript gives property is missing a type

我有一個帶有一些默認值的 function,當我嘗試調用 function 時,因為它有一些默認值,所以我不需要傳遞任何默認值,例如

function myFunc(
    {
      str1,
      str2,
      timeout = 3000,
    } : {
      str1: string,
      str2: string,
      timeout: number,
    }
  ): Promise<any | undefined> {
    // some logics here
  }


await myFunc({
      str1: 'string 1',
      str2: 'string 2'
  })

我收到一個錯誤,例如

Property 'timeout' is missing in type '{ str1: string; str2: string; timeout: number;}'

我該如何解決這個問題,因為聲明了一個默認值,如果我不需要覆蓋默認值,我不應該傳入屬性,不是嗎?

提前感謝您的任何幫助和建議。

本節只有 JavaScript 語法:

function myFunc(
    {
      str1,
      str2,
      timeout = 3000,
    }

如果該參數未定義,它將分配一個值 3000。 您還需要向 TypeScript 指明參數的類型應該是什么,並且:

{
      str1: string,
      str2: string,
      timeout: number,
}

需要timeout是一個屬性。

如果您希望它是可選的,請注意在 TypeScript 類型中,除了使用(發射)JavaScript 的默認值。

function myFunc(
    {
      str1,
      str2,
      timeout = 3000,
    } : {
      str1: string,
      str2: string,
      timeout?: number,
    }
  ): Promise<any | undefined> {
    // some logics here
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM