如果在函数中使用this,需要在函数的第一个参数中声明this的类型(放在其他参数之前),这样每次调用函数时,ts将确保this的确是你预期的类型。
需要注意的是,this的值取决于调用函数的方式,不受声明方式的干扰。
function getName(this: { name: string }) {
console.log(this.name);
}
const obj = {
name: '测试',
getName,
}
obj.getName(); // 测试