所以,我们有一些函数:
const someVal = func(customObject => {console.log(customObject.data.users)});
我们可以用对象销毁语法重写这个函数,使其对用户来说更加美观简洁。值:
const someVal = func(({ data: { users } = {}) => {console.log(users)});
现在想象一下,users的值必须由某种typescript接口来描述。
应该如何联机完成?
像这样?
const someVal = func(({ data: { users } = {} : { data: { users : UserInterface }) => {console.log(users)});
UPD数据是通用值变量
您可以内联完成,但可能会变得非常混乱。我通常更喜欢定义可读性更好的类型:
type SomeValInput = {
data: {
users?: UserInterface;
};
};
type SomeVal = (data: SomeValInput) => void;
const someVal: SomeVal = ({ data: { users } }) => console.log(users || {});
我没有在析构函数中包含默认值,因为我过去在将其与typescript结合使用时遇到过问题。