vue监视属性

简介: 普通监视深度监视普通监视1.当被监视的属性变化时,回调函数自动调用,进行相关2操作2.监视的属性必须存在,才能进行监视3.监视的两种写法(1).new vue时传入watch配置(2).通过vm.$watch监视

文章目录


普通监视

1.当被监视的属性变化时,回调函数自动调用,进行相关2操作

2.监视的属性必须存在,才能进行监视

3.监视的两种写法

(1).new vue时传入watch配置

(2).通过vm.$watch监视

 new Vue({
    el:'#root',
    data: {
        isHot:true,
        numbers:{
a:1,
b:1
        }
    },
    computed:{
        info(){
            return this.isHot ? 'yanre' : 'liangshuang'
        }
    },
    methods: {
        change(){
            this.isHot = !this.isHot
        }
    }, 
watch:{
//     isHot:{
//         //handler当ishot改变时被调用
//         handler(newValue,oldValue){
// console.log('ishot被修改了',newValue,oldValue);
//         }
//     }
//简写
isHot(newValue,oldValue){
    console.log('ishot改变了',newValue,oldValue);
}
}
 })
vm.$watch('isHot',{
immediate:true,//初始化时让handler调用一下
        handler(newValue,oldValue){
 console.log('ishot被修改了',newValue,oldValue);
         }
})

深度监视

(1).vue中的watch默认不检测对象内部值的改变 (一层)

(2).配置deep:true可以检测对象内部值的改变(多层)


注:

(1)vue自身可以监测对象内部值的改变,但vue提供的watch默认不可以

(2)使用watch时根据数据的具体结构,决定是否采用深度监视


目录
相关文章
|
23小时前
|
JavaScript 前端开发 测试技术
使用 Vue CLI 脚手架生成 Vue 项目
通过 Vue CLI 创建 Vue 项目可以极大地提高开发效率。它不仅提供了一整套标准化的项目结构,还集成了常用的开发工具和配置,使得开发者可以专注于业务逻辑的实现,而不需要花费大量时间在项目配置上。
53 7
使用 Vue CLI 脚手架生成 Vue 项目
|
2天前
|
JavaScript 算法
“Error: error:0308010C:digital envelope routines::unsupported”启动vue项目遇到一个错误【已解决
“Error: error:0308010C:digital envelope routines::unsupported”启动vue项目遇到一个错误【已解决
8 1
|
2天前
|
JavaScript
error Component name “Login“ should always be multi-word vue/multi-word-component-names【已解决】
error Component name “Login“ should always be multi-word vue/multi-word-component-names【已解决】
6 1
|
2天前
|
JavaScript
vue知识点
vue知识点
10 3
|
3天前
|
JavaScript 前端开发 Java
【vue实战项目】通用管理系统:作业列表
【vue实战项目】通用管理系统:作业列表
16 0
|
4天前
|
JavaScript API
【vue实战项目】通用管理系统:信息列表,信息的编辑和删除
【vue实战项目】通用管理系统:信息列表,信息的编辑和删除
21 2
|
4天前
|
JavaScript API
【vue实战项目】通用管理系统:信息列表,信息录入
【vue实战项目】通用管理系统:信息列表,信息录入
11 3
|
JavaScript 测试技术 容器
Vue2+VueRouter2+webpack 构建项目
1). 安装Node环境和npm包管理工具 检测版本 node -v npm -v 图1.png 2). 安装vue-cli(vue脚手架) npm install -g vue-cli --registry=https://registry.
1002 0
|
10天前
|
JavaScript 前端开发 开发者
vue3+ts配置跨域报错问题解决:> newpro2@0.1.0 serve > vue-cli-service serve ERROR Invalid options in vue.
【6月更文挑战第3天】在 Vue CLI 项目中遇到 "ERROR Invalid options in vue.config.js: ‘server’ is not allowed" 错误是因为尝试在 `vue.config.js` 中使用不被支持的 `server` 选项。正确配置开发服务器(如代理)应使用 `devServer` 对象,例如设置代理到 `http://xxx.com/`: ```javascript module.exports = { devServer: {
24 1
|
4天前
|
JavaScript 前端开发 API
【vue实战项目】通用管理系统:学生列表
【vue实战项目】通用管理系统:学生列表
16 2