#typescript #object #types #anonymous-objects
#typescript #объект #типы #анонимные объекты
Вопрос:
У меня есть функция:
function someFunction({ propertyA, propertyB })
{
return 1;
}
Я хочу присвоить свойствам анонимного объекта в аргументе функции явный тип, но использование типичного синтаксиса TypeScript для this ( propertyA: boolean
) приведет к тому, что тип будет помещен туда, где обычно находится значение, поскольку :
в литерале объекта означает, что «свойство слева имеет значение справа’.
Мне интересно, как я могу это сделать? Компилятор выдает мне предупреждения о свойствах, неявно имеющих any
тип. Прошу прощения, это, вероятно, довольно просто, но я поискал в Google и посмотрел на этом сайте и не могу найти ничего, что касалось бы этой конкретной проблемы.
Ответ №1:
function someFunction({ propertyA, propertyB }: {propertyA: boolean; propertyB: number }){
//...
или, еще лучше: создайте явный тип:
interface SomeFunctionOpts{
propertyA: boolean;
propertyB: number;
}
function someFunction({ propertyA, propertyB }: SomeFunctionOpts) {
//...