interface Person {
age: number;
}
@Entry
@Component
struct Index {
@State zsList: Person[] = [{ age: 10 }, { age: 20 }, { age: 30 }]
build() {
Column() {
Text(this.zsList[0].age.toString())
Button().onClick(() => {
this.zsList.splice(0, 1, this.zsList[0].age + 1);
})
}
}
}
这个错误通常表示您正在尝试将一个数字类型的值赋给一个期望是 Person
类型的参数。
可能的原因是:
-
您可能在代码中的某个地方错误地将一个数字直接传递给了一个应该接收
Person
类型对象的函数、方法或变量。 -
也有可能是类型推断出现了错误,导致编译器认为您应该传递一个
Person
类型,但实际上您传递的是一个数字。
要解决这个问题,您需要确保传递给相关位置的是一个正确的 Person
类型的对象,而不是一个数字。
interface Person {
age: number;
}
@Entry
@Component
struct Index {
@State zsList: Person[] = [{ age: 10 }, { age: 20 }, { age: 30 }]
build() {
Column() {
Text(this.zsList[0].age.toString())
Button().onClick(() => {
let newPerson: Person = { age: this.zsList[0].age + 1 };
this.zsList.splice(0, 1, newPerson);
})
}
}
}