mvvm的优势

Posted 蝌蝌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mvvm的优势相关的知识,希望对你有一定的参考价值。

之前在项目中有个功能,是根据数据模型生成页面,然后页面变动之后,再同步到数据模型之中。

当时用的jquery写的,一点一点的控制,整个功能写下来、测试,花了很长时间,而且还担心出bug。

现在用mvvm思想的类库knockoutjs重构下,发现是如此的轻松,完全不用考虑dom变化的细节。

下面贴出关键代码:

<div data-bind="foreach:groups">
        <label>
            <input type="checkbox" data-bind="attr:{checked:isCheck},value:groupId" /><span data-bind="text:groupName"></span>
        </label>
    </div>
    <script>
        var viewModel = function () {
            groups = ko.observableArray([
                { groupId: 1, groupName: ‘.net‘, isCheck: true },
                { groupId: 2, groupName: ‘.ef‘, isCheck: false },
                { groupId: 3, groupName: ‘.mvc‘, isCheck: true }
            ])
        };
        ko.applyBindings(new viewModel());
    </script>

好的工具真的是事半功倍。

以上是关于mvvm的优势的主要内容,如果未能解决你的问题,请参考以下文章

Android MVVM:具有多个片段的活动 - 将共享 LiveData 放在哪里?

Android MVVM在哪里存储数据?

MVVM Light:在 XAML 中添加 EventToCommand 而不使用 Blend、更简单的方法或片段?

Android 上的 Kotlin:如何在片段中使用数据库中的 LiveData?

使用Architecture Components构建的应用程序是否使其成为“MVVM”,如果是,应用程序的哪些部分与哪个MVVM层相关?

使用 NavController 从片段导航到另一个片段