簡體   English   中英

類型錯誤:類型上不存在屬性

[英]TypeError : Property does not exist on type

我正在為 React 項目使用類型腳本。 我已經定義了所有值的類型,但是prop.option?我無法獲取名稱的值。 請告訴我答案。

type PropTypes = {
  option?: OptionType[]
}

type OptionType = {
  id?: number
  name?: string
  price: number
  quantity: number
}

function OrderItemPCForm(props: PropTypes) {

  console.log('===>', props.option?.name)
return(<div>...</div>)}
Property 'name' does not exist on type 'OptionType[]'.

您的問題是您將option定義為數組(不是對象)

option?: OptionType[]

這樣當您嘗試訪問值時

console.log('===>', props.option?.name)

它會拋出錯誤,因為您嘗試從未定義的option object 中獲取name

它有兩種修復方法

第一個是您應該刪除option上的數組定義

type PropTypes = {
  option?: OptionType //removed `[]`
}

第二個修復可以是

console.log('===>', props.option[index].name) //index can be populated from a loop

但這也取決於您想要實現哪種類型的意圖(一個數組或一個 object option

暫無
暫無

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

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