广告
返回顶部
首页 > 资讯 > 精选 >Vue3.2中的setup语法怎么使用
  • 112
分享到

Vue3.2中的setup语法怎么使用

2023-06-29 01:06:35 112人浏览 八月长安
摘要

本篇内容主要讲解“vue3.2中的setup语法怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue3.2中的setup语法怎么使用”吧!vue3.2 到底更新了什么?根据原文内容的更新

本篇内容主要讲解“vue3.2中的setup语法怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习Vue3.2中的setup语法怎么使用”吧!

Vue3.2中的setup语法怎么使用

vue3.2 到底更新了什么?

根据原文内容的更新的内容主要有以下 5 块:

SSR:服务端渲染优化。@vue/server-renderer包加了一个ES模块创建

node.js解耦,使在非node环境用@vue/serve-render做服务端渲染成为可能,比如(Workers、Service Workers)

New SFC Features:新的单文件组件特性

WEB Components:自定义 web 组件。这个我们平时很少用到,但是应该知道

Effect Scope api: effect 作用域,

用来直接控制响应式副作用的释放时间(computed 和 watchers)。

这是底层库的更新,开发不用关心,但是应该知道

PerfORMance Improvements:性能提升。这是内部的提升,跟开发无关

setup 的简单介绍

起初 Vue3.0 暴露变量必须 return 出来,template中才能使用;

这样会导致在页面上变量会出现很多次。

很不友好,vue3.2只需在script标签中添加setup。

可以帮助我们解决这个问题。

组件只需引入不用注册,属性和方法也不用返回,

也不用写setup函数,也不用写export default ,

甚至是自定义指令也可以在我们的template中自动获得。

变量、方法不需要 return 出来

<template>  <div class="home">    显示的值{{flag }}    <button @click="changeHander">改变值</button>  </div></template><!-- 只需要在script上添加setup --><script lang="ts" setup>    import { ref } from 'vue';    <!-- flag变量不需要在 return出去了 -->    let flag=ref("开端-第一次循环")    <!-- 函数也可以直接引用,不用在return中返回 -->    let changeHander=():void=>{        flag.value='开端-第二次循环'    }</script>

组件不需要在注册

<!-- 这个是组件 --><template>    <div>        <h3> 你好-我是肖鹤云</h3>    </div></template>使用的页面<template>  <div class="home">    <test-com></test-com>  </div></template><script lang="ts" setup>// 组件命名采用的是大驼峰,引入后不需要在注册,是不是爽歪歪呀!//在使用的使用直接是小写和横杠的方式连接 test-comimport TestCom from "../components/TestCom.vue"</script>

分析引入 setup 后组件的变化

在 script setup 中,引入的组件可以直接使用无需再通过components进行注册,[是不是真的很香啊!]并且无法指定当前组件的名字,它会自动以文件名为主,也就是不用再写name属性了。当我们的页面上需要使用很多组件时,它的功能一下就体现出来了。

新增 defineProps

刚刚我一直在强调,不需要使用setup函数,机智的小伙伴会说:那么子组件怎么接受父组件传递过来的值呢?props,emit怎么获取呢?别担心,新的api出现了,我们的主角 defineProps复制代码

defineProps 的使用

父组件传递参数

<template>  <div class="home">    <test-com :info="msg" time="42分钟"></test-com>  </div></template><script lang="ts" setup>// 组件命名采用的是大驼峰,引入后不需要在注册,是不是爽歪歪呀!import TestCom from "../components/TestCom.vue"let msg='公交车-第一次循环'</script>

子组件接受参数

<template>    <div>        <h3> 你好-我是肖鹤云</h3>        <p>信息:{{ info}}</p>        <p>{{ time }}</p>    </div></template><script lang="ts" setup>import {defineProps} from 'vue'defineProps({    info:{        type:String,        default:'----'    },    time:{        type:String,        default:'0分钟'    },})</script>

Vue3.2中的setup语法怎么使用

子组件怎么向父组件抛出事件?defineEmits的到来!

子组件使用

别担心,我们使用defineEmits。它可以像父组件抛出事件。<template>    <div>        <h3> 你好-我是肖鹤云</h3>        <button @click="hander1Click">新增</button>        <button @click="hander2Click">删除</button>    </div></template><script lang="ts" setup> import {defineEmits} from 'vue'//  使用defineEmits创建名称,接受一个数组let $myemit=defineEmits(['myAdd','myDel'])let hander1Click=():void=>{    $myemit('myAdd','新增的数据')}let hander2Click=():void=>{    $myemit('myDel','删除的数据')}</script>

父组件

<template>  <div class="home">    <test-com @myAdd="myAddHander" @myDel='myDelHander'></test-com>  </div></template><script lang="ts" setup>// 组件命名采用的是大驼峰,引入后不需要在注册,是不是爽歪歪呀!//在使用的使用直接是小写和横杠的方式连接 test-comimport TestCom from "../components/TestCom.vue"let myAddHander=(mess):void=>{  console.log('新增==>',mess);}let myDelHander=(mess):void=>{  console.log('删除==>', mess);}</script>

Vue3.2中的setup语法怎么使用

如何获取子组件中的属性值

子组件

<template>    <div>        <h3> 你好-我是肖鹤云</h3>        <p>性别:{{ sex}}</p>        <p>其他信息:{{ info}}</p>    </div></template><script lang="ts" setup>import { Reactive, ref,defineExpose } from "vue";let sex=ref('男')let info=reactive({    like:'喜欢李诗晴',    age:27})// 将组件中的属性暴露出去,这样父组件可以获取defineExpose({    sex,    info})</script>复制代码

父组件

<template>  <div class="home">    <test-com @myAdd="myAddHander" @myDel='myDelHander' ref="testcomRef"></test-com>    <button @click="getSonHander">获取子组件中的数据</button>  </div></template><script lang="ts" setup>import TestCom from "../components/TestCom.vue"import {ref} from 'vue'const testcomRef = ref()const getSonHander=()=>{  console.log('获取子组件中的性别', testcomRef.value.sex );  console.log('获取子组件中的其他信息', testcomRef.value.info );}</script>复制代码

Vue3.2中的setup语法怎么使用

新增指令 v-memo

v-memod会记住一个模板的子树,元素和组件上都可以使用。该指令接收一个固定长度的数组作为依赖值进行[记忆比对]。如果数组中的每个值都和上次渲染的时候相同,则整个子树的更新会被跳过。即使是虚拟 DOM 的 VNode 创建也将被跳过,因为子树的记忆副本可以被重用。因此渲染的速度会非常的快。需要注意得是:正确地声明记忆数组是很重要。开发者有责任指定正确的依赖数组,以避免必要的更新被跳过。<li v-for="item in listArr"  :key="item.id"  v-memo="['valueA','valueB']">    {{ item.name   }}</li>v-memod的指令使用较少,它的作用是:缓存模板中的一部分数据。只创建一次,以后就不会再更新了。也就是说用内存换取时间。复制代码

style v-bind 该同学已经从实验室毕业了

经过尤大大和团队的努力,<style> v-bind 已经从实验室毕业了。我们可以使用这个属性了。爽歪歪!我们可以在style中去使用变量。是不是感觉很牛逼呀!现在我们用起来,第一次使用<style> v-bind复制代码

style v-bind将span变成红色

<template>  <span> 有开始循环了-开端 </span>  </template><script setup>  import { reactive } from 'vue'  const state = reactive({    color: 'red'  })</script><style scoped>  span {        color: v-bind('state.color');  }  </style>复制代码

Vue3.2中的setup语法怎么使用

到此,相信大家对“Vue3.2中的setup语法怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Vue3.2中的setup语法怎么使用

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Vue3.2中的setup语法怎么使用
    本篇内容主要讲解“Vue3.2中的setup语法怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue3.2中的setup语法怎么使用”吧!vue3.2 到底更新了什么?根据原文内容的更新...
    99+
    2023-06-29
  • 一文搞懂Vue3.2中setup语法糖使用
    目录前言一、如何使用setup语法糖二、data数据的使用三、method方法的使用四、watchEffect的使用五、watch的使用六、computed计算属性的使用七、prop...
    99+
    2022-11-13
  • 强烈推荐!Vue3.2中的setup语法糖
    目录前文1.什么是setup语法糖2.使用setup组件自动注册3.使用setup后新增API3.1 defineProps3.2 defineEmits3.3 defineExpo...
    99+
    2022-11-12
  • Vue3.2 setup语法糖及Hook函数基本使用
    目录引言setup(语法糖)1、基本使用2、自动注册3、组件通信defineEmit ----> [子组件向父组件事件传递] 代码示列:defineExpose ---->...
    99+
    2022-11-13
  • 什么是语法糖?Vue3.2中怎么使用语法糖?
    3.计算属性我们一般使用计算属性来描述依赖响应式状态的复杂逻辑。说白了就是这个计算属性的值依赖于其他响应式属性的值,依赖的属性发生变化,那么这个计算属性的值就会进行重新计算。<script setup> import { ref...
    99+
    2022-11-28
    语法糖 Vue.js
  • Vue3中的script setup语法糖怎么使用
    这篇文章主要介绍了Vue3中的script setup语法糖怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue3中的script setup语法糖怎么使用文章都会有所收获,下面我们一起来看看吧。scr...
    99+
    2023-07-04
  • Vue3.2中如何使用语法糖
    今天小编给大家分享一下Vue3.2中如何使用语法糖的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一. 概述在Vue2时期,组...
    99+
    2023-07-04
  • script setup 语法的使用方法
    这篇文章主要介绍“script setup 语法的使用方法”,在日常操作中,相信很多人在script setup 语法的使用方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2022-10-19
  • vue3.2中的vuex怎么使用
    这篇文章主要介绍“vue3.2中的vuex怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue3.2中的vuex怎么使用”文章能帮助大家解决问题。Vuex 中有以下几个核心概念:State:...
    99+
    2023-07-06
  • 怎么在Vue3中使用<script lang=“ts“ setup>语法糖
    迁移组件以下组件有两个道具(要显示的和一个标志)。通过另一个组件,计算模板中显示的小马图像的URL,基于这两个道具。该组件还会在用户单击它时发出一个事件。The image selected while the Ponypony ...
    99+
    2023-05-16
    Vue3 setup
  • vue3更新的setup语法糖怎么用
    本文小编为大家详细介绍“vue3更新的setup语法糖怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue3更新的setup语法糖怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。语法糖用法://&nb...
    99+
    2023-06-30
  • Vue3怎么使用setup语法糖拒绝写return
    defineProps 代替props接收父组件传递的数据(父组件向子组件传参)父组件:<template> <div>父组件</div> <Child :title="msg&q...
    99+
    2023-05-14
    Vue3 return setup
  • Vue3中的setup语法糖、computed函数、watch函数怎么使用
    这篇文章主要介绍“Vue3中的setup语法糖、computed函数、watch函数怎么使用”,在日常操作中,相信很多人在Vue3中的setup语法糖、computed函数、watch函数怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简...
    99+
    2023-07-05
  • vue3基于script setup语法$refs的使用
    目录一、vue2语法二、vue3使用1. 组件设置ref值2. 组件实例获取3. 子组件内设置对外公开的变量一、vue2语法 vue2语法在组件上设置ref属性后,在代码里可以通过 ...
    99+
    2022-11-12
  • vue3.0中setup怎么使用
    本文小编为大家详细介绍“vue3.0中setup怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue3.0中setup怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。在vue3.0中,setup函...
    99+
    2023-06-29
  • 怎么使用vue3的setup()
    本篇内容主要讲解“怎么使用vue3的setup()”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用vue3的setup()”吧!从 vue2 升级到 vue3,vue3 是可以兼容 vue...
    99+
    2023-06-25
  • 如何在Vue3中使用<script lang=“ts“ setup>语法糖
    这篇“如何在Vue3中使用<script lang=“ts“ setup>语法糖”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下...
    99+
    2023-07-06
  • vue3 setup语法糖各种语法新特性的使用方法(vue3+vite+pinia)
    目录一、背景二、vue3语法的使用2.1. 父子通信props2.2. EventBus2.3. 计算属性computed2.4. pinia状态管理器的使用2.4.1. 模块化2....
    99+
    2022-11-13
  • 如何在vue3中同时使用tsx与setup语法糖
    目录前言Tsx与setup语法糖的优势遇到的问题最后前言 想这样做的原因是在vue3里使用tsx开发时,props的声明显得异常麻烦,不禁想到defineProps的便利,但同时在v...
    99+
    2022-11-13
  • 怎么在vue3中使用setup、 ref、reactive
    本篇文章为大家展示了怎么在vue3中使用setup、 ref、reactive,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.初识setUp的使用简单介绍下面的代码功能:使用ref函数,去使用监听...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作