一。setup 函数是组合api的入口函数
1. 使用 ref 只能定义简单类型的变化,不能监听复杂类型的变化(对象/数组)
2. 在组合 API 中,如果想定义方法,不用定义到 methods 中,直接定义即可
3. 在组合 API 中定义的变量/方法,要想在外面使用,必须通过 return 暴露出去
<script>import {ref} from 'vue'export default {name: 'App',setup(){// 入口函数// 1. 使用 ref 只能定义基本类型的变化,不能监听复杂类型的变化(对象/数组)// 这个变量发生改变之后,Vue会自动更新UIlet count = ref(0);// 2. 在组合 API 中,如果想定义方法,不用定义到 methods 中,直接定义即可function myFn(){count.value += 1;}// 3. 注意点:// 在组合 API 中定义的变量/方法,要想在外面使用,必须通过 return 暴露出去return { count, myFn }}}
</script>
4. 使用 reactive 来监听 (对象/数组)的变化
<script>import {reactive} from 'vue'export default {name: 'App',setup(){// 入口函数// 1. 使用 reactive 定义(对象/数组)// let state = reactive({stus:[{id:1, name:"zs", age:10},{id:2, name:"ls", age:20},{id:3, name:"ww", age:30},]});// 2. 改变其中的一个值,其会相应变换function changeStus(){state.stus[0].age += 1}return {state, changeStus}}}
</script>