TypeScript 开发组件 this.setData 提示类型错误如何解决?
使用 TypeScript 编写组件,在组件中试图使用 this.setData 赋值时出现如下报错。 [图片] 临时解决方案 在《ts开发小程序,组件methods中调用this.setData提示“类型xx上不存在”》这个帖子中查到一个解决方案是:在外部定义一个变量 that,然后在 attached 时将 this 赋值给 that 。 但这个方法的一个问题是:在整个项目中只能使用一次 that 这个变量名(我用的是 _this),不知为何会判定所有文件都在同一个作用域。因此在上图中不得不每个组件定义一个不同的变量名(如:_thisDrawer)。 [图片] 这个方法可以临时解决,但是太麻烦了,而且感觉并没有从本质上解决问题。 更好的解决方案? 小弟理解之所以会出现这个问题,是因为 Component() 类型声明的问题。官方「TypeScript + Sass」模板创建的项目的 typings 目录中已经有很多类型声明,可以利用这些或者自己扩展,单独针对每个组件声明一下类型吗? 刚学习 TypeScript 不是很精通,同样用 TypeScript 开发的大佬们遇到这个问题是怎样解决的,有更优雅的解决方案么?(除了到处都能查到的用 class 扩展的方法。)