从新回归Vue之3.0(二):setup,defineProps,defineEmits,变量,defineExpose


一.在setup()中不能用this

在vue2.x里飞天遁地的this没有了,因为

`setup` 的调用发生在 `data` 、`computed` 或 `methods` 被解析之前,所以它们无法在 `setup` 中被获取,这也是为了避免setup()和其他选项式API混淆。


二.setup推荐用法

<template>
  <h1>{{ msg }}h1>
template>
 
<script setup lang="ts">
import { ref } from "vue";
script>
 
<style scoped>
style>                       

注意点:

在setup语法糖中导入组件不需要注册声明,直接在视图中使用即可;
默认的vue文件结构发生改变,js默认放到页面顶部,而视图template放到js下面,style放到页面底部;
导入vue文件必须写上文件后缀名.vue, 否则ts无法识别vue文件。
vscode插件不要用vue-format,会导致setup申明消失。
三.defineProps和defineEmits的用法

`defineProps` 和 `defineEmits` API,它们在 `