面试题答案
一键面试<template>
<div>
<p>用户名: {{ userData.name }}</p>
<p>年龄: {{ userData.age }}</p>
</div>
</template>
<script lang="ts">
import { defineComponent, ref } from 'vue';
export default defineComponent({
setup() {
// 定义响应式数据对象
const userData = ref<{ name: string; age: number }>({
name: '张三',
age: 20
});
return {
userData
};
}
});
</script>
这样做能增强类型安全性的原因:
- 明确类型定义:使用TypeScript对
userData
的属性name
和age
分别指定了string
和number
类型,在开发过程中如果对这些属性赋值不符合指定类型,TypeScript编译器会报错,从而在编码阶段就能发现类型相关的错误,而不是等到运行时才暴露问题。 - 代码提示:在编辑器中,当使用
userData
对象时,由于有明确的类型定义,编辑器能提供准确的代码提示,提高开发效率,同时也能避免因拼写错误等导致的运行时错误。