02-Vue单向数据绑定与双向数据绑定

MVVM设计模式

  • 在MVVM设计模式中由3个部分组成
    M : Model 数据模型(保存数据, 处理数据业务逻辑)
    V : View 视图(展示数据, 与用户交互)
    VM: View Model数据模型和视图的桥梁(M是中国人, V是美国人, VM就是翻译)

Vue中MVVM的划分

  • Vue其实是基于MVVM设计模式的
    被控制的区域: View
    Vue实例对象 : View Model
    实例对象中的data: Model

Vue调试工具安装

1下载离线安装包
2 打开谷歌插件界面
3 直接将插件拖入
4 报错 程序包无效: "CRX_HEADER_INVALID"
可以将安装包修改为rar后缀, 解压之后再安装
5 重启浏览器

Vue中数据的单向传递

  • 我们把"数据"交给"Vue实例对象", "Vue实例对象"将数据交给"界面"
    Model -> View Model
<!--这里就是MVVM中的View-->
<div id="app">
    <p>{{ name }}</p>
</div>
<script>
    // 这里就是MVVM中的View Model
    let vue = new Vue({
        el: '#app',
        // 这里就是MVVM中的Model
        data: {
            name: "李南江"
        }
    });
</script>

Vue中数据的双向传递

  • 默认情况下Vue只支持数据单向传递 M -> VM -> V
    但是由于Vue是基于MVVM设计模式的, 所以也提供了双向传递的能力
    <input><textarea><select>元素上可以用 v-model 指令创建双向数据绑定

  • 注意点: v-model 会忽略所有表单元素的 valuecheckedselected 特性的初始值
    而总是将 Vue 实例的数据作为数据来源

<!--这里就是MVVM中的View-->
<div id="app">
    <p>{{ name }}</p>
    <input type="text" v-model="msg">
</div>
<script>
    // 这里就是MVVM中的View Model
    let vue = new Vue({
        el: '#app',
        // 这里就是MVVM中的Model
        data: {
            name: "李南江",
            msg: "全栈小秘圈"
        }
    });
</script>

配套教程

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容