gpt4 book ai didi

typescript - 使用 typescript 别名时如何初始化空数组?

转载 作者:行者123 更新时间:2023-12-02 03:41:56 28 4
gpt4 key购买 nike

我声明了一个类型别名,但在不创建项目的情况下无法初始化它:

类型 ModelState = [string, string[]];const modelState: ModelState = [null,[]];modelState["firstName"] = ["名字为必填项。"];

如果我尝试像这样初始化,TypeScript 会给我一个错误“类型‘undefined[]’不能分配给类型‘[string, string[]]’”:

const modelState: ModelState = [];

正确的做法是什么?

最佳答案

理想情况下,您应该使用数据初始化元组,但您可以像这样欺骗编译器:

const modelState: ModelState = [] as any;

[string, string[]] 形式的元组仍然是一个带有数字索引的数组。在我看来,你实际上想要这样的东西:

interface ModelState {
firstName: string[],
lastName: string[],
}

或者甚至像这样:

interface ModelState {
[key: string]: string[],
}

关于typescript - 使用 typescript 别名时如何初始化空数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48306410/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com