[英]Can we implement interface for react state attributes in typescript?
[英]How can we initialise a state in react typescript in constructor method, If it has a specific interface type
我有以下代碼:在這里,我有一個狀態的接口類型。 我如何在構造函數方法中初始化它。 由於它不允許我初始化為字符串/ null /數字
interface IState { selectedUser?: IUserMenu}
class AssignUser extends React.Component<IProps, IState>{ constructor(props: IProps) { super(props); this.state = { selectedUser: ' what i have to put here' }}}
構造函數中的this.state ={}
意味着什么?
IUserMenu是一個接口,因此無法初始化為數字,'',null,
我只能使用的是undefined
嗨@ankitjayaprakash,
我有一個關於您的情況的示例,其中我正在初始化接口中描述的要傳遞的對象(但不是可選的)
你可以在這里看到
“ this.state = {}”在構造函數中的作用只是初始化該組件的狀態,即使沒有任何構建函數也可能使該組件退出。
您的IState接口指定它具有一個名為selectedUser
屬性,該屬性是可選的(因為其后有一個?)。
如果確實提供了selectedUser
,則它的類型必須為IUserMenu
。 因此,您what i have to put here
的對象符合IUserMenu
接口。
this.state = {}表示使用括號中定義的對象初始化狀態。 在您的情況下,括號中定義的對象必須與您的IState接口匹配(因此,包含一個名為selectedUser
的undefined
IUserMenu
類型的IUserMenu
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.