返回顶部
首页 > 资讯 > 精选 >Vue中怎么运用TS语法
  • 802
分享到

Vue中怎么运用TS语法

2023-07-05 07:07:11 802人浏览 泡泡鱼
摘要

本文小编为大家详细介绍“Vue中怎么运用TS语法”,内容详细,步骤清晰,细节处理妥当,希望这篇“Vue中怎么运用TS语法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、父子传值的用法父传子:defineProp

本文小编为大家详细介绍“Vue中怎么运用TS语法”,内容详细,步骤清晰,细节处理妥当,希望这篇“Vue中怎么运用TS语法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

一、父子传值的用法

父传子:defineProps的TS写法

// 父组件:和 vue2 一样正常传值<template>  <div class="login-page">    <cp-nav-bar title="登录" right-text="注册"></cp-nav-bar>  </div></template>
// 子组件:接收<script setup lang="ts">import { defineProps } from 'vue'const props = defineProps<{  title: string  rightText?: string // ?表示可传可不传}>()// js中使用console.log(props.title)</script> <template>  <!-- 模板中直接使用变量名 -->  <van-nav-bar    fixed    left-arrow    :title="title"    :right-text="rightText"  ></van-nav-bar></template>

补充:

如果需要给 props 设置默认值,需要使用 withDefaults 函数:

const props = withDefaults(defineProps<{  title?: string  rightText?: string}>(),{  title: '首页'}) // 以上代码通过语法糖解构,可以优化成如下代码:const { title, title= "首页" } = defineProps<{  title?: string  rightText?: string}>();

子传父:defineEmits的TS写法

// 子传const emit = defineEmits<{  (e: 'changeMoney', money: number): void  (e: 'changeCar', car: string): void}>() // 父组件:和 vue2 一样正常接收// @changeMoney="方法名"

二、ref/Reactive的TS用法

1.简单数据类型可以不定义ts类型

ref() 会隐式的依据数据推导类型

// const money = ref<number>(10)const money = ref(10)

2.如果是复杂类型,建议用泛型

type Todo = {  id: number  name: string  done: boolean}const list = ref<Todo[]>([])list.value = [  { id: 1, name: '吃饭', done: false },  { id: 2, name: '睡觉', done: true }]

三、computed的TS用法 

推荐泛型,一行搞定

const total = computed<string>(() => (count.value * 2).toFixed(2));

四、非空断言

1.可选链

<script setup lang="ts">import { onMounted, ref } from 'vue'; const input = ref< htmlInputElement | null >(null) onMounted(()=>{  // 如果获取的元素不是input,就可能没有value值  console.log(input.value?.value);})</script> <template>  <div>App组件</div>  <input type="text" ref="input" value="abc"></template>

2.非空断言

  // 一定要确定不为空!!!  console.log(input.value!.value)  input.value!.value = '123'

五、自定义typescript类型声明文件

1.给JS文件提供类型

在导入 .js 文件时,TS 会自动加载与 .js 同名的 .d.ts 文件,以提供类型声明。

具体步骤如下:

declare 关键字:用于类型声明,为其他地方(比如,.js 文件)已存在的变量声明类型,而不是创建一个新的变量。

对于 type interface 等这些明确就是 TS 类型的(只能在 TS 中使用的),可以省略 declare 关键字。

其他 JS 变量,应该使用 declare 关键字,明确指定此处用于类型声明。

// 参考示例:自定义组件的类型,必须是同名的.d.ts文件import CpIcon from '@/components/CpIcon.vue' declare module 'vue' {  interface GlobalComponents {    CpIcon: typeof CpIcon  }}

2.共享类型

如果多个 .ts 文件中都用到同一个类型,此时可以创建 .d.ts 文件提供该类型,实现类型共享。

创建 index.d.ts 类型声明文件。

创建需要共享的类型,并使用 export 导出(TS 中的类型也可以使用 import/export 实现模块化功能)。

在需要使用共享类型的 .ts 文件中,通过 import 导入即可(.d.ts 后缀导入时,直接省略)。

读到这里,这篇“Vue中怎么运用TS语法”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网精选频道。

--结束END--

本文标题: Vue中怎么运用TS语法

本文链接: https://lsjlt.com/news/350278.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Vue中怎么运用TS语法
    本文小编为大家详细介绍“Vue中怎么运用TS语法”,内容详细,步骤清晰,细节处理妥当,希望这篇“Vue中怎么运用TS语法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、父子传值的用法父传子:defineProp...
    99+
    2023-07-05
  • Vue中如何运用TS语法
    目录一、父子传值的用法父传子:defineProps的TS写法子传父:defineEmits的TS写法二、ref/reactive的TS用法1.简单数据类型可以不定义ts类型2.如果...
    99+
    2023-02-28
    Vue运用TS语法 Vue TS语法
  • Vue-cli3中如何使用TS语法
    这篇文章主要讲解了“Vue-cli3中如何使用TS语法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue-cli3中如何使用TS语法”吧!ts有什么用?类型检查、直接编译到原生js、引入新...
    99+
    2023-07-05
  • Vue-cli3中使用TS语法示例代码
    目录ts有什么用?为什么用ts?1、引入Typescript包2、配置3、让项目识别.ts4、vue组件的编写ts有什么用? 类型检查、直接编译到原生js、引入新的语法糖 为什么用t...
    99+
    2023-02-23
    Vue-cli3使用TS语法 Vue-cli3使用TS
  • vue中ts文件怎么应用
    这篇文章主要介绍了vue中ts文件怎么应用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue中ts文件怎么应用文章都会有所收获,下面我们一起来看看吧。vue中ts是指typescript文件,typescri...
    99+
    2023-07-05
  • 怎么在Vue3中使用<script lang=“ts“ setup>语法糖
    迁移组件以下组件有两个道具(要显示的和一个标志)。通过另一个组件,计算模板中显示的小马图像的URL,基于这两个道具。该组件还会在用户单击它时发出一个事件。The image selected while the Ponypony ...
    99+
    2023-05-16
    Vue3 setup
  • JAVA语法中加号运算符怎么用
    小编今天带大家了解JAVA语法中加号运算符怎么用,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“JAVA语法中加号运算符怎么用”的知识...
    99+
    2023-06-17
  • Vue3项目中引用TS语法的实例讲解
    目录基础语法vue-routervuex#####elementPlusaxiossetup script基础语法 定义data  //script标签上 **lang="...
    99+
    2024-04-02
  • 如何在Vue3中使用<script lang=“ts“ setup>语法糖
    这篇“如何在Vue3中使用<script lang=“ts“ setup>语法糖”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下...
    99+
    2023-07-06
  • vue项目中使用ts(typescript)入门教程
    目录1、引入Typescript2、配置文件webpack配置3、让项目识别.ts4、vue组件的编写data()中定义数据props传值完整代码案例最近项目需要将原vue项目结合t...
    99+
    2024-04-02
  • Vue+ts里面this.$store问题怎么解决
    这篇文章主要介绍了Vue+ts里面this.$store问题怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue+ts里面this.$store问题怎么解决文章都会有所收获,下面我们一起来看看吧。Vue...
    99+
    2023-06-29
  • 怎么用vue+ts实现元素鼠标拖动效果
    这篇文章主要讲解了“怎么用vue+ts实现元素鼠标拖动效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用vue+ts实现元素鼠标拖动效果”吧!实现效果相关使用属性// cli...
    99+
    2023-06-25
  • Java语言中运算符怎么用
    本文将为大家详细介绍“Java语言中运算符怎么用”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“Java语言中运算符怎么用”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下,一起去收获新知识吧...
    99+
    2023-06-26
  • Vue3中的模板语法和vue指令怎么使用
    1 模板插值语法在script 声明一个变量可以直接在template 使用用法为{{变量名称}}模板语法是可以编写条件运算的运算也是支持的操作API 也是支持的<template> {{ message }} {{...
    99+
    2023-05-18
    VUE Vue3
  • 详解如何在Vue3使用<scriptlang=“ts“setup>语法糖
    目录迁移组件隐式返回definePropsdefineEmits默认关闭和defineExposeVue 3.2 引入了语法,这是一种稍微不那么冗长的声明组件的方式。您可以通过向 S...
    99+
    2024-04-02
  • vue中install方法怎么用
    这篇文章主要介绍了vue中install方法怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。vue提供install可供我们开发新的插件及全局注册组件等install方法...
    99+
    2023-06-21
  • c语言中运算符的用法
    c 语言运算符用于执行变量和常量的操作,包括算术(如加减乘除)、关系(如等于大于)、逻辑(如与或非)和位操作符(如左移右移)。不同类型的运算符具有不同的优先级,当多个运算符出现在同一表达...
    99+
    2024-04-29
    c语言
  • Vue中的Mustache插值语法、v-bind指令怎么使用
    本篇内容介绍了“Vue中的Mustache插值语法、v-bind指令怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、Mustach...
    99+
    2023-07-04
  • c语言中逗号运算符怎么用
    c语言中逗号运算符返回其最后一个操作数的值。用途包括合并表达式、指定函数参数、以及按顺序执行语句。其语法为 expr1, expr2, ..., exprn,其中 exprn 是要返回的...
    99+
    2024-05-12
    c语言
  • vue中语法规则检测报错怎么办
    这篇文章主要介绍了vue中语法规则检测报错怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。主要报错如下:截取了一段常见报错,选取其中一个...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作