2014-10-31 44 views
0

也许一个愚蠢的问题,但knockoutjs的文档告诉,knockoutjs是一个MVVM框架。knockoutjs中的MVVM在哪里?

我能看到的是有一个viewmodel(一个javascript对象),一个html模板,视图,以及对viewmodel(使用observables)的绑定。

但为什么它被称为MVVM框架?我只能看到MVVM的“MV”。

+0

我不认为标志着这个问题的问题“是什么模型 - 视图 - 视图模型/淘汰赛解决”是正确的,因为重复这个问题明确指出,为什么它称为MVVM,而从OP的角度来看,它似乎是Model-View(MV)。另一个问题是非常通用的,对于其中一些问题的答案已经建议提出具体的问题,而这个问题是非常具体的。尽管如此,安德斯回答这个问题是正确的。 – Divick 2015-03-01 09:38:39

回答

5

MVVM代表模型视图的ViewModel

一个更好的名字,但不流利将模型视图模型视图MVMV。

模型是您从服务器获得的数据,它通常非常类似于数据库或其他数据源中的域实体。

它在客户端转换为ViewModel,该ViewModel经过优化,可更好地针对View查看数据绑定。

编辑:对于像{ name: "foo", id: 1 }这样的一些模型,您永远不会将其转换为您直接绑定它的ViewModel。然后,你可以说,模型同时充当模型和视图模型

+0

谢谢!这听起来很逻辑。 – user3702384 2014-10-31 12:09:33