2017-09-21 57 views
2

我有錯誤角色映射對象

類型 '字符串' 不可分配爲類型 '()=>字符串'

this.selectedValue.display = headerOcr.author.profession; 

private selectedValue: IDocumentType = { 
    id: '1', 
    display:() => '', 
    label: '' 
} 

這是用於「了selectedValue缺省初始化值「

我該怎麼辦headerOcr.author.professiondisplay;() => ''應該有const類型。

+0

試()=> {return '指令'} – valepu

+2

你分配給'display'功能。如果顯示類型是一個字符串,你可能想通過編寫'display:(()=>')()'或直接寫出'display:'''來立即調用該函數。 –

回答

2

類型「串」是不能分配給輸入「()=>字符串'

Typescript期望所有的對象屬性都是字符串,所以有兩種方法:

  1. display:() => return '',
  2. 返回值更改IDocumentType界面如下:

IDocumentType { /*...*/ display:() => string /*...*/ }

2

如果將其定義爲string類型,則無法傳遞函數。您可以在更改headerOcr的定義或在將其傳遞給顯示之前評估函數調用。

定義的改變看起來像這樣:

IDocumentType { 
    display:() => string 
} 

有了,你必須使用它作爲IDocumentType.display()