knockoutjs中的MVVM在哪里?

时间:2014-10-31 08:01:46

标签: javascript mvvm knockout.js

也许是一个愚蠢的问题,但是knockoutjs的文档告诉我们,knockoutjs是一个MVVM框架。

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

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

1 个答案:

答案 0 :(得分:5)

MVVM代表Model View ViewModel

更好的名称,但不是流畅的模型ViewModel View MVMV。

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

它在客户端上转换为ViewModel,该ViewModel经过优化,可以更好地对数据进行数据绑定。

编辑:对于某些模型,如{ name: "foo", id: 1 },您永远不会将其转换为ViewModel,您只需直接绑定它即可。然后,您可以说模型同时充当模型和ViewModel