首页 > 其他分享 >Vue——watch侦听属性 例子

Vue——watch侦听属性 例子

时间:2023-01-09 20:45:43浏览次数:41  
标签:username Vue true app watch test 侦听 sum

<!DOCTYPE html> <html lang="en">
<head>     <meta charset="UTF-8">     <meta http-equiv="X-UA-Compatible" content="IE=edge">     <meta name="viewport" content="width=device-width, initial-scale=1.0">     <title>watch的使用</title>     <script src="https://cdn.staticfile.org/vue/3.0.5/vue.global.js"></script> </head>
<body>     <div id="app">         <input type="text" v-model="username">         <input type="text" v-model="age">         <h3>{{sum}}</h3>         <button @click="changeTestA">a++</button>         <button @click="changeTestB">b++</button>     </div> </body> <script>     const app = {         // el: "#app",         data() {             return {                 username: "菜菜",                 age: 18,                 sum: "",                 test: {                     a: 1,                     b: 1                 }             }         },         methods: {             changeTestA() {                 this.test.a++;             },             changeTestB() {                 this.test.a++;             }         },         watch: {             username: {                 immediate: true,                 handler(newValue, oldValue) {                     this.sum = "我是" + this.username + ",年龄" + this.age;                     console.log("username旧值" + oldValue + ";usenamex新值" + newValue)                 }             },             age: {                 immediate: true,                 handler() {                     this.sum = "我是" + this.username + ",年龄" + this.age;                 }             },             test: {                 immediate: true,                 deep: true, //默认是false 不会对test进行深层次监听 设为true后可以进行深层次监听                 handler() {                     console.log("test改变");                 }             },             //不需要设置其他属性时可直接使用简写 如下:             // test() {  //只有test改变时才会触发(不包含内部层次)             //     console.log("test改变");             // }         }     };     const vm = Vue.createApp(app);     vm.mount("#app");     //watch的第二种写法     //vm.$watch('prop',function(o,n){}) </script>
</html>

标签:username,Vue,true,app,watch,test,侦听,sum
From: https://www.cnblogs.com/caiiac/p/17038477.html

相关文章

  • Vue判断数组元素是否为undefined
    问题:现在有这样一个数组,没有第一个元素,如何判断该位置为空控制台输出为undefinde首先尝试array[0]===undefined,可以需要修改为array[0]==="undefinde"这样不行......
  • avue的一些踩坑记录
    avue可以说前端开发的一大利器了。给大家封装了一些非常易用的组件,尤其对于crud以及表单的操作。但是封装易用的同时,也会导致一些api不能方便的调用,尤其是多组件嵌套交互......
  • vue3 中动态绑定 img src 问题
    vite 官方默认的配置,如果资源文件在assets文件夹打包后会把图片名加上hash值,但是直接通过:src="imgSrc"方式引入并不会在打包的时候解析,导致开发环境可以正常引入,打包后......
  • [VueJsDev] 快速入门 - vue项目根目录配置文件
    [VueJsDev]目录列表https://www.cnblogs.com/pengchenggang/p/17037320.htmlvue项目根目录配置文件:::details目录目录vue项目根目录配置文件Part.1:package.json......
  • [VueJsDev] 基础知识 - 常见编码集
    [VueJsDev]目录列表https://www.cnblogs.com/pengchenggang/p/17037320.html常用编码集:::details目录目录常用编码集Part.1:Unicode编码Part.2:ASCII编码Par......
  • [VueJsDev] 基础知识 - CommonJs VS ES Module
    [VueJsDev]目录列表https://www.cnblogs.com/pengchenggang/p/17037320.htmlCommonJsVSESModule:::details目录目录CommonJsVSESModulePart.1:CommonJsPart......
  • [VueJsDev] 快速入门 - vscode 自动格式化
    [VueJsDev]目录列表https://www.cnblogs.com/pengchenggang/p/17037320.htmlvscode自动格式化(vue):::details目录目录vscode自动格式化(vue)Step.1:.editorcon......
  • [VueJsDev] 快速入门 - vscode 设置推荐
    [VueJsDev]目录列表https://www.cnblogs.com/pengchenggang/p/17037320.htmlvscode设置推荐:::details目录目录vscode设置推荐Edit.1:GotoLocationFlow.2:创建......
  • [VueJsDev] 快速入门 - vscode 插件推荐
    [VueJsDev]目录列表https://www.cnblogs.com/pengchenggang/p/17037320.htmlVscode插件推荐:::details目录目录Vscode插件推荐Font.1:字体推荐Them.2:Ayu主......
  • [VueJsDev] 基础知识 - ES6循环使用手册
    [VueJsDev]目录列表https://www.cnblogs.com/pengchenggang/p/17037320.htmlES6循环使用手册:::details目录目录ES6循环使用手册Array.1:filter()方法Array.2:......