Angularjs ViewModel到底是什么?
我对Angular很在行,我理解它是MVVM设计模式 从一个非常基本的层面上,我了解到以下几点: -视图:用户可以看到的应用程序的可视输出 -模型:填充应用程序的数据 -视图模型: 我看到它对自定义指令使用了以下命名约定:Angularjs ViewModel到底是什么?,angularjs,mvvm,Angularjs,Mvvm,我对Angular很在行,我理解它是MVVM设计模式 从一个非常基本的层面上,我了解到以下几点: -视图:用户可以看到的应用程序的可视输出 -模型:填充应用程序的数据 -视图模型: 我看到它对自定义指令使用了以下命名约定: controller: myController, controllerAs: 'vm' 我也知道控制器真正连接了视图和模型。但是超出了这种理解水平,我很难准确理解它的意义 在该代码中,它使用ui路由控制器将“vm”设置为控制器,因此它不需要使用$scop
controller: myController,
controllerAs: 'vm'
我也知道控制器真正连接了视图和模型。但是超出了这种理解水平,我很难准确理解它的意义
在该代码中,它使用ui路由控制器将“vm”设置为控制器,因此它不需要使用$scope,这与:
var vm = this;
我的答案与AngularJS并没有严格的关系,但采用了更一般的方法来解释什么是ViewModel 有时,将模型直接附着到视图并不是您想要的。 举个例子,你有一个有名字和姓氏的人,这将是你的“模型”。 如果您(在视图中)希望显示persons全名,则可以使用名为person的ViewModel,该ViewModel有一个名为Name的属性。此ViewModel将通过在FirstName和LastName之间加空格来填充 这只是一个示例,另一个示例可能是通过组合来自两个或多个不同模型的数据来表示ViewModel,例如person和address