• Vue3.0


    前言

    watch函数监听当某个值的改变,可以就此做一些事情(钩子函数)


    监听ref对象

    <body>
        <div id="app">
    		<input v-model="firstName"/>
    		<input v-model="lastName"/>
    		<div>{{fullName}}</div>
    	</div>
    </body>
    <script>
    
    const {createApp, ref,  watch} = Vue;
    const firstName = ref('');
    const lastName = ref('');
    let fullName = ref('');
    
    const app = {
       // 入口函数
        setup() {
            // 监听ref对象
            watch(firstName, (newVal, oldVal) => {
                fullName.value = firstName.value + lastName.value;
            })
            // 监听ref对象
            watch(lastName, (newVal, oldVal) => {
                fullName.value = firstName.value + lastName.value;
            })
            return {
                firstName,
                lastName,
                fullName
            }
        }
    }
    
    // 挂载(建立vue与dom的联系)
    createApp(app).mount('#app')
    </script>
    

    监听reactive对象

    <body>
        <div id="app">
    	<input v-model="name.firstName"/>
            <input v-model="name.lastName"/>
            <div>{{fullName}}</div>
    	</div>
    </body>
    <script>
    
    const {createApp, ref, reactive, watch} = Vue;
    const name = reactive({
        firstName: '',
        lastName: ''
    })
    let fullName = ref('');
    
    const app = {
       // 入口函数
        setup() {
            // 监听reactive对象
            watch(name, (newVal, oldVal) => {
                fullName.value = name.firstName + name.lastName;
            })
            return {
                fullName,
                name
            }
        }
    }
    
    // 挂载(建立vue与dom的联系)
    createApp(app).mount('#app')
    </script>
    

    监听reactive对象下的单个属性

    <body>
        <div id="app">
    	<input v-model="name.firstName"/>
            <input v-model="name.lastName"/>
            <div>{{fullName}}</div>
    	</div>
    </body>
    <script>
    
    const {createApp, ref, reactive, watch} = Vue;
    const name = reactive({
        firstName: '',
        lastName: ''
    })
    let fullName = ref('');
    
    const app = {
       // 入口函数
        setup() {
            // 监听reactive对象下的单个属性
            watch(()=>name.firstName, (newVal, oldVal) => {
                fullName.value = name.firstName + name.lastName;
            })
            return {
                fullName,
                name
            }
        }
    }
    
    // 挂载(建立vue与dom的联系)
    createApp(app).mount('#app')
    </script>
    

    - End -
    梦想是咸鱼
    关注一下吧
    以上为本篇文章的主要内容,希望大家多提意见,如果喜欢记得点个推荐哦
    作者:Maggieq8324
    本文版权归作者和博客园共有,欢迎转载,转载时保留原作者和文章地址即可。
  • 相关阅读:
    程序员开发工作之算法和架构
    iOS开发学习概述及知识整理
    git基本技巧及进阶
    使用命令行工具运行Xcode 7 UI Tests
    技巧集锦2
    Xcode开发小问题集锦
    Xcode 7如何 免费 真机调试iOS应用
    常用shell script 珍藏
    多线程学习7--CountDownLatch
    学习多线程6---栅栏
  • 原文地址:https://www.cnblogs.com/maggieq8324/p/15251250.html
Copyright © 2020-2023  润新知