笔记-MVVM模式

MVVM模式

MVVM模式(Model-View-ViewModel),下图描述了Vue.js中ViewModel是如何和View以及Model进行交互的.
mvvm.png
ViewModel 是 Vue.js的核心,它是一个Vue 实例.Vue实例是作用于某一个HTML元素上的,这个元素可以是HTML的body元素,也可以是制定了id的某个元素.
当创建了 ViewModel后,双向绑定是如何达成的呢?
首先,我们将上图中的 DOM Listeners 和 Data Bindings 看作康哥工具,它们是实现双向绑定的关键.
从 View 侧看,ViewModel 中的DOM Listeners 工具会帮我们监测页面上DOM 元素的变化,如果有变化,则更改 Model 中的数据;
从 Model 侧看,当我们更新 Model 中的数据时,Data Bindings 工具会帮我们更新页面中的DOM元素.

Hello World 示例

凡事都要先”Hello world”一下:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>

    <body>
        <!--这是我们的View-->
        <div id="app">
            {{ message }}
        </div>
    </body>
    <script src="js/vue.js"></script>
    <script>
        // 这是我们的Model
        var exampleData = {
            message: 'Hello World!'
        }

        // 创建一个 Vue 实例或 "ViewModel"
        // 它连接 View 与 Model
        new Vue({
            el: '#app',
            data: exampleData
        })
    </script>
</html>

使用Vue的过程就是定义MVVM各个组成部分的过程.
1. 定义View;
2. 定义Model;
3. 创建一个Vue实例或’ViewModel’,它用于连接View 和Model.

在创建 Vue 实例时,需要传入一个选项对象,选项对象可以包含数据,挂载元素,方法,模生命周期钩子等等.
在这个示例中,选项对象 的*el属性指向View,el:'#app'表示该Vue实例将挂载到 <div id='app'>...</div>这个元素;**data属性指向Model,data:exampleData表示我们的Model是exampleData对象.
Vue.js有多种数据绑定的语法,最基础的形式是文本插值,使用一对大括号语法,在运行时 {{message}}会被数据 对象的message 属性替换所以页面上会输出”Hello World”.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
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、付费专栏及课程。

余额充值