学习Vue第二天-MVVM模型

1、MVVM模型

Vue的作用就是让我们更方便的处理Model和View之间的关系。

2.数据代理

    var number=18;//定义一个变量
var person={
    name:'张三',
    gender:'男'
    // age:18
}
Object.defineProperty(person,'age',{
    // value:18
     // 当age值被调用的时候,get()执行,返回的age的值
    get(){
       console.log("age值被调用了!");
        return number;
    },
    //d
    set(value){
console.log("age的值被修改了,且值为"+value)
number=value;
    }
})

使用Object.defineProperty(对象,值,{属性})的时候,我们可以为之前写的Person添加一个名为age的变量属性,

并且书写了get(),set()方法的话,我们对象里面的age值也会跟随number变化而变化

3、Vue中的数据代理

MVVM图中的data数据是由data提供给Vue实例,当我们要处理数据时,也不是直接从data中获取数据,而是从Vue实例中获取

我们可以输出Vue实例可以看到我们data数据中的值还有他们相应的get()set()方法。

_data中存放的就是从data中获取的数据。

4、事件处理

 <div id='demo'>
        <h1>欢迎学习{{name}}</h1>
        <button v-on:click="showinfo">点击我显示更多</button>
    </div>
 
    <script type="text/javascript">
        Vue.config.productionTip = false;
        // 创建一个Vue实例,用于解析容器,实例于容器是一一对应的关系
       var vm=new Vue({
            // el指定那个容器
            el: '#demo',
            // data为el选择实例提供数据
            data: {
                name: 'world'
            },
            methods:{
                showinfo(event){
                    alert("你好同学")
                }
            }
        })
        console.log(vm);
    </script>

v-on:xxx也可以写作@XXX绑定事件,xxx是事件名

showinfo()括号里面也可以传参数,但这样的话要传时间的话需要写成showinfo($event)的样式

method中配置的函数不能写箭头函数,不然的话函数里面的this就不再是Vue实例而是Windows

@click=“demo”与@click="demo($event)"效果相同,但后者可以传参。

MVVM 是一种前端架构设计模式,它将界面、数据和逻辑分离并通过 ViewModel 进行交互。在 MVVM 模式中,视图(View)和模型(Model)是完全独立的,它们通过 ViewModel 进行双向绑定(Binding)。 在 Vue.js 中,MVVM 模式被称为“响应式编程”,它的核心是数据劫持和发布订阅模式。Vue.js 的数据驱动视图,通过数据改变来更新视图,这些数据是被劫持的,也就是说,当数据发生变化时,Vue.js 会自动更新视图。 Vue.js 中的 MVVM 模式包含以下三个部分: 1. 视图层(View):负责展示数据,通常是 HTML 模板。 2. 模型层(Model):负责存储数据,通常是 JavaScript 对象。 3. 视图模型层(ViewModel):负责处理视图与模型之间的交互,它是一个纯粹的 JavaScript 对象,负责实现数据绑定、数据格式化、事件监听等功能。 在 Vue.js 中,我们可以使用指令(v-directive)来实现数据绑定。指令是一种特殊的 HTML 属性,它的值通常是一个表达式,用来绑定指令所在元素的属性或事件。例如,v-bind 指令可以将一个 JavaScript 对象绑定到 DOM 元素的属性,v-on 指令可以监听 DOM 元素的事件。 除了指令之外,Vue.js 还提供了计算属性(Computed)和侦听器(Watch)等功能,用于处理数据的计算和监听数据的变化。 总之,MVVM 模式是一种前端架构设计模式,它通过 ViewModel 实现视图(View)和模型(Model)之间的双向绑定(Binding),实现了数据的自动更新和视图的响应式。在 Vue.js 中,MVVM 模式被称为“响应式编程”,它的核心是数据劫持和发布订阅模式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值