标题:“Why Not”使用QML实现一个MVVM框架
作者:cycloveu
日期:2017-04-12 17:57
内容:
一.前言
最近几年最热门的技术之一就是前端技术了,各种前端框架,前端标准和前端设计风格层出不穷,而在众多前端框架中具有MVC,MVVM功能的框架成为耀眼新星,比如GitHub关注度很高的Vue.js ,由于是国人作品,其设计风格和文档友好度对国人而言更胜一筹。
二.认识MVVM
1.MVVM的结构
MVVM是Model-View-ViewModel的简写。其结构如下图:

View绑定到ViewModel,然后执行一些命令在向它请求一个动作。而反过来,ViewModel跟Model通讯,告诉它更新来响应UI。这样便使得为应用构建UI非常的容易。往一个应用程序上贴一个界面越容易,外观设计师就越容易使用Blend来创建一个漂亮的界面。同时,当UI和功能越来越松耦合的时候,功能的可测试性就越来越强。
2.MVVM的优点
MVVM模式和MVC模式一样,主要目的是分离视图(View)和模型(Model),有几大优点
1. 低耦合。视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的"View"上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。
2. 可重用性。 ..
#1 [hominlinx 06-23 14:17]
你好, 能跟你交流下吗, 我的qq : 295870332
#2 [cycloveu 08-21 21:29]
在QML中实现双向绑定可以用一下方法
Binding {
target: nameText
property: "text"
value: viewModel.text
}
Binding {
target: viewModel
property: "text"
value: nameText.text
}