如何在带有 TypeScript 的 Vue.js 中使用计算道具? [英] How to use computed props in Vue.js with TypeScript?

查看:36
本文介绍了如何在带有 TypeScript 的 Vue.js 中使用计算道具?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

关于如何使用 JavaScript 语言与 Vue.js 交互的文档有很多,而关于 TypeScript 的文档也很少.问题是如果 vue 组件是用 TypeScript 编写的,你如何定义 computed 属性?

根据官方示例计算 是一个带有函数的对象,这些函数将根据它们的依赖属性进行缓存.

这是我做的一个例子:

从'vue'导入Vue;从vue-property-decorator"导入{组件};@成分({})导出默认类 ComputedDemo 扩展 Vue {私人名字:字符串 = '约翰';私人姓氏:字符串 = 'Doe';私有计算:对象 = {全名():字符串{返回 `${this.firstName} ${this.lastName}`;},}}

和 html:

<h1>计算道具 ts 演示</h1><ul><li>名字:{{firstName}}</li><li>姓氏:{{lastName}}</li><li>一起:{{fullName}}</li>

第三个列表项不输出任何内容.有人能告诉我在这种情况下如何定义 computed 吗?

解决方案

您可以使用属性访问器来声明计算属性.请参阅 Vue 类组件.只要您输入内容,getter 就会被触发.

例如: