首页 > 其他分享 >VUE3

VUE3

时间:2022-12-04 19:00:57浏览次数:434  
标签:count console point watch ###### VUE3 var

###### computed

```javascript
const computed1 = computed({
get(){
return count
},
set(){
console.log("1")
}
})
```

 

###### watch

```javascript
const count = ref(0)
const b = reactive({a:'dd',b:2,c:{a:9}})

var watch1= watch(count,(n,o)=>{
console.log("count发生改变:"+count)
})

var watch2= watch(b,(n,o)=>{
console.log("count发生改变:"n,o) 监视reactive的对象会强制开启deep,o值无法获取
},{deep:false}) deep不生效,监视b的属性对象就生效

var watch3 = watch(()=>b.c.a,(n,o)=>{
console.log(n,o) 监视的就是b.c.a
},{immediate:true}) 初次渲染组件就调用

var watch4 = watch([()=>{b.c.a},count],()=>{
..... 可监视数组
})
```

###### wathEffect

```javascript
watchEffect(()=>{
var c = count.value 用到count就会监视count
var a = b.c.a 监视b.c.a 整个回调会执行一遍
console.log("effect")
})
```

###### 钩子

```javascript
Vue3.0中可以继续使用Vue2.x中的生命周期钩子,但有有两个被更名:
beforeDestroy改名为 beforeUnmount
destroyed改名为 unmounted
Vue3.0也提供了 Composition API 形式的生命周期钩子,与Vue2.x中钩子对应关系如下:
beforeCreate===>setup()

created=======>setup()

beforeMount ===>onBeforeMount

mounted=======>onMounted

beforeUpdate===>onBeforeUpdate

updated =======>onUpdated

beforeUnmount ==>onBeforeUnmount

unmounted =====>onUnmounted

```

###### hook函数

- 什么是hook?—— 本质是一个函数,把setup函数中使用的Composition API进行了封装。
- 类似于vue2.x中的mixin。

创建hook文件

```javascript
import {reactive,onMounted,onBeforeUnmount} from "vue";
export default function(){
let point= reactive({
y:0,
x:0
});

function getPoint(event){
point.y = event.pageY;
point.x = event.pageX;

}
onMounted(()=>{
window.addEventListener("click",getPoint)
});
onBeforeUnmount(()=>{
window.removeEventListener("click",getPoint)
});
return point; 把数据返回出去
}
```

```javascript
import hook1 from '../hook' 导入

var point = hook1() 使用 得到数据

模板中使用数据
<p>{{point.x+","+point.y}}</p>
```

 

标签:count,console,point,watch,######,VUE3,var
From: https://www.cnblogs.com/xiao-wan/p/16950422.html

相关文章

  • Vue3路由
    路由基础(页面跳转)下载vue-router,vue3对应的版本是4cnpminstallvue-router@4启动项目npmrundevrundev的由来组件Home、Blogrouter.jsimport{createRout......
  • Vue3
    Vue3setup()和ref()的使用ref()这是vue3声明变量的方式,并且在setup()中return返回出去才可以在页面中使用。vue2声明的变量需要放在data中声明使用。vue2......
  • vue3 + vite 监听路由
    1.watch监听import{watch}from'vue'import{useRouter}from'vue-router'letrouter=useRouter()watch(()=>router.currentRoute._value,(m,n)=>{......
  • vue3自定义修饰符
    v-model 有一些内置的修饰符,例如 .trim,.number 和 .lazy都是对输入的数据做过滤处理vue也可以自定义实现创建一个自定义的修饰符 capitalize,它会自动将 v-model......
  • vue3 实现自定义 v-model
    在vue中,form表单输入可以通过v-model实现双向数据绑定,例如:<inputv-model="text"/>{{text}}在表单中输入时,页面展示的data-text也会相应改变如果是封装......
  • vue3 + element plus 使用字节跳动图标
    使用场景:提一下vue2用法>> 下面回到正题vue3用法1 安装包:npminstall@icon-park/vue-next--save2 字节跳动图标库取图地址>>  3 用法:<te......
  • vue3新增知识点(组合式API、ref和reactive、响应式原理、setup、watch和watchEffect)持
    1.组合式API和声明式API的区别,组合式API的优点2.Vue3的响应式原理通过Proxy(代理):拦截对象中任意属性的变化:包括:属性值的读写、属性的添加、属性的删除等。通过reflect(反射):......
  • Vue3中Echart挂在全局报错问题 dataSample.js:104 Uncaught TypeError: Cannot read p
    原因Proxy应用到了整个ECharts实例上的问题,不太建议把整个ECharts实例这样的对象放到ref里,容易影响到实例底层的运行。可以使用shallowRef替代,这样Proxy不会应......
  • vue3组件通信,网上一大堆,这里直说常用的两个,props,emit
    props(父传子,多用于子组件的数据渲染)【父】<div><comp-son:name="name":age="age"/>//向子组件传值</div>setup(){conststate=reactive({......
  • 转 vue3讲义 知识点 整理文档PPT
      vue3自学理论笔记 vue3讲义  知识点  整理文档PPT项目不忙时就学习新内容,知识不全。 1.vue2使用es5中的object.definedPropert对数据进行双向绑定......