【发布时间】:2018-05-28 13:58:58
【问题描述】:
假设我们有以下接口User:
interface User {
id: number;
name: string;
bag: Item[];
}
我现在可以定义一个 React 组件:
interface UserComponentProps {
user: User;
}
interface UserComponentState {}
class UserComponent extends React.Component<UserComponentProps, UserComponentState> {
这很好,因为现在我可以在组件中进行类型检查,但是有一个问题:用户不是不可变的,因此很难阻止 UserComponent 在用户未更改时呈现。
但如果我将用户存储为不可变对象,我的组件将如下所示:
interface UserComponentProps {
user: Immutable.Map<string, any>;
}
interface UserComponentState {}
class UserComponent extends React.Component<UserComponentProps, UserComponentState> {
如何为此类对象定义接口?
【问题讨论】:
标签: reactjs typescript immutable.js typechecking