vue3.0和vue2.0的区别

举例说明:

实现监听鼠标移动坐标

vue2.0写法

<template>
    <div>
        <div>
            x:{{x}} <br>
            y:{{y}} 
        </div>
    </div>
</template>
<script>
    export default {
        name: "index",
        data() {
            return {
                x:0,
                y:0
            };
        },
        created() {
            window.addEventListener("mousemove",this.update)
        },
        mounted() {},
        methods: {
            update(e){
                thisx=e.pageX;
                thisy=e.pageY;
            }
        }
    };
</script>
<style scoped lang="scss">
</style>

vue3.0写法

<template>
    <div>
        <div>
            x:{{x}} <br>
            y:{{y}} 
        </div>
    </div>
</template>
<script>
    import {ref,computed,watch,onMounted,onUnmounted} from "vue"
    function userMousePosition(){
        const x = ref(0)
        const y = ref(0)
        function update(e) {
            x.value=e.pageX;
            y.value=e.pageY;
        }
        onMounted(()=>{
            window.addEventListener("mousemove",update)
        })
    }
    export default {
        setup(){
            const {x,y} =userMousePosition()
            return {x,y}
        }
    };
</script>
<style scoped lang="scss">
</style>

vue 3.0新增:

ref reactive onMounted onUnmounted setup toRefs watchEffect

取代 data 和created声明周期函数

computed和watch按需引入

修改ref值在value里修改 例x.value

watch监听区别监听size变量值

父子传值


 

vuex新增

使用

vue-router新增

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值