Vue3.0入门

https://vue3js.cn/

v-bind绑定样式:有两种方式
对象方式:<div v-bind:class="{active:isActive}"></div>
<div :style="{fontSize:fs,fontWeight:fw}"></div>

数组方式:<div -v-bind:class="[fs,bgc]"></div>
<div :style="[a,b]"></div>

v-on绑定事件:
<button v-on:click="prev">上一张</button>
<button @click="next">下一张</button>

v-if条件渲染:
<p v-if="age>18">成年人</p>
<p v-else>未成年</p>

v-for循环渲染:
<li class="msg" v-for="(item,index) in list" :key="index">{{item.name}}:{{item.content}}</li>

v-model数据双向绑定:
data中定义的数据发生变化时,页面中的数据跟着变化
修改页面中的数据时,data中的数据也会变化
姓名:<input type="text" v-model="name"></br>
留言:<textarea cols="22" rows="10" v-model="content"></textarea>

MVVM开发模式:

Model-View-ViewModel
减少页面DOM操作
在这里插入图片描述

CompositionAPI

Vue2采用OptionsAPI
在这里插入图片描述

Vue3采用CompositionAPI
在这里插入图片描述

响应式数据声明方式:

ref()和reactive(),声明的数据必须在setup的return中
setup()是CompositionAPI的入口函数

ref()用来定义简单数据类型
const { ref } = Vue

reactive()用来定义复杂数据类型
const { reactive } = Vue

Vue生命周期:

Vue实例 挂载、更新、销毁 的过程
生命周期会伴随各种事件,这些事件对应的函数叫生命周期函数/生命周期钩子
生命周期函数会在某一刻自动运行

挂载:创建Vue实例并挂载到页面上
beforeCreate:创建之前
created:创建完成,一般用来初始化页面需要的数据
beforedMount:挂载之前
Mounted:挂载完成,挂载完成后可以直接操作DOM对象

更新:页面发生变化
beforeUpdate:更新之前
updated:更新完成

CompositionAPI中取消了beforeCreate和created,使用setup
所有的钩子函数必须从Vue对象中解构出来
所有的钩子函数前必须加on

//钩子函数必须从Vue对象中解构出来
        const {
            ref,
            onBeforeMount,
            onMounted,
            onBeforeUpdate,
            onUpdated
        
        } = Vue;
        let msg=ref('');
        
        //初始化数据的方法,在setup中直接调用即可
        const getDate=()=>{
            msg.value="hello world"
        }
        function change(){
            msg.value="你好呀";
        }
        Vue.createApp({
            setup(){
                getDate();
				
				//需要传入匿名函数
                onBeforeMount(()=>{
                    console.log("onBeforeMount");
                })
                onMounted(()=>{
                    document.querySelector('p').style.color='red';
                    console.log('onMounted');
                })
                onBeforeUpdate(()=>{
                    console.log("onBeforeUpdate");
                })
                onUpdated(()=>{
                    document.querySelector('p').style.color='red';
                    console.log('onUpdated');
                })

                return {msg,change}
            }

        }).mount('#app');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值