赞
踩
beforeCreate() { console.log("-----beforeCreate-----"); }, created() { console.log("-----created-----"); }, beforeMount() { console.log("-----beforeMount-----"); }, mounted() { console.log("-----mounted-----"); }, beforeUpdate() { console.log("-----beforeUpdate-----"); }, updated() { console.log("-----updated-----"); }, beforeUnmount() { console.log("-----beforeUnmount-----"); }, unmounted() { console.log("-----unmounted-----"); },
全部改名:
要引入
import {} from ‘vue’
类似vue2的mixin,本质是函数, 用来封装组合式api(ref、reactive)
在src
下创建文件夹hooks
, 内部文件是use···.js
命名
每个hook
文件,包含数据、方法、钩子
// 引入组合式api import { reactive, onMounted, onBeforeUnmount } from "vue"; // 暴露hook函数 export default function () { // 数据: 存储鼠标位置 let point = reactive({ x: 0, y: 0, }); // 函数: 记录鼠标点击位置 function savePoint(event) { point.x = event.pageX; point.y = event.pageY; // console.log(point); } // 钩子 onMounted(() => { window.addEventListener("click", savePoint); }); onBeforeUnmount(() => { window.removeEventListener("click", savePoint); }); // 返回数据 return point; }
在组件中使用时
1…引入hook
2.使用
setup() {
let point = usePoint();
return {
point,
};
},
3.渲染模板
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。