草庐IT

Jetpack的ViewModel与LiveData

全部标签

javascript - Knockout JS - 为什么所有示例都只包含 ViewModel/View 而没有 Model

我正在查看大量可用的KnockoutJS文档,但它似乎并不像我预期的那样遵循MVVM模式(在查看维基百科对MVVM的定义时)。在所有示例中,它们似乎都显示了ViewModel和View的源代码,但是从来没有模型,现在看来模型应该包含的大部分功能(保存/检索数据表示)都放在View模型。我认为也许ViewModel实际上更类似于模型,而您可以免费获得的绑定(bind)层是ViewModel,因为它负责所有绑定(bind)...所以我想知道我是否遗漏了什么?因为我现在有一个关于我的UI逻辑应该去哪里的问题,即添加水印、Inter-View聊天等,我还没有真正得到一个可靠的答案,所以想确认我

javascript - KnockoutJS - 重新绑定(bind) ViewModel

我想将viewModel中的一个对象与另一个具有相同类型(例如Person)的对象进行切换。如果我这样做:varpersonViewModel=function(person){varself=this;self.id=person.id;self.firstName=ko.observable(person.firstName);self.lastName=ko.observable(person.lastName);self.addresses=ko.observableArray(contact.addresses);self.removeAddress=function(add

javascript - Knockout.js 中的“模型”和 'ViewModel'

在MVC中,“Model”只是数据的代码表示(例如,在ASP.NETMVC中,它是一个具有相应字段的类)。但是在Knockout中(使用MVVM),我看到带有字段的对象称为“ViewModel”。来自官方KO文档:Amodel:yourapplication’sstoreddata.Thisdatarepresentsobjectsandoperationsinyourbusinessdomain(e.g.,bankaccountsthatcanperformmoneytransfers)andisindependentofanyUI.WhenusingKO,youwillusuall

knockout.js - 为什么在 knockout.js 示例中,viewmodel 有时被定义为一个函数,有时又被定义为一个直接变量定义?

我正在尝试了解什么是使用knockout定义和组织我的jsView模型的最佳实践。我不是js天才所以...好的,所以在许多示例中,viewModel被定义为:varviewModel={firstName:ko.observable("Bert"),lastName:ko.observable("Bertington"),capitalizeLastName:function(){varcurrentVal=this.lastName();//Readthecurrentvaluethis.lastName(currentVal.toUpperCase());//Writebackam

javascript - KnockoutJS - 更新 ViewModel/Mapping 插件

如何更新完整的viewModel?在页面加载时,我得到一个模型并使用ko.mapping.fromJS(myObject)将其转换为viewModel。如果用户点击一个按钮,我想从服务器获取更新的数据现在我想应用这些更新如果我使用ko.applyBindings(viewModel);它会完美地更新用户界面。但它再次添加相同的事件。因此,如果用户单击按钮,事件将被触发两次,第三次,依此类推。问题什么是更新我的完整viewModel的好方法。也许我删除绑定(bind)并再次应用它们?(如何做到这一点)。示例varviewModel;functionupdate(){$.ajax({url

c# - 转换绑定(bind)路径,以便它在设计时识别 ViewModel 属性

好吧,这与其说是个问题,不如说是个烦恼。没有错误页面subview当绑定(bind)到BindingContext来自This的来源引用,我收到XAML“警告”Cannotresolveproperty'IsVacate'indatacontextoftype'object'Binding="{BindingPath=BindingContext.IsVacate,Source={x:ReferenceThis}}"很明显,BindingContext是一个对象并且是未类型化的。但是上面的代码编译和工作我想做的是转换,首先是因为我有强制症,但主要是因为它很容易在IDE页面channel

c# - 如何在 Property Trigger 触发时设置 viewmodel 属性

我有一个带有View模型的ListView。ItemsSource是View模型中对象的集合。某些标志IsFlagOn的View模型上存在一个属性。当ListViewItem检测到IsMouseOver时,我想将View模型中的该属性设置为True。然后将其他UI元素绑定(bind)到同一属性,以便在切换MouseOver时View发生变化。我如何在XAML中完成此操作?我会想象这样的事情(但这会中断):更新:错误是CannotresolvetheStyleProperty'IsFlagOn'.VerifythattheowningtypeistheStyle'sTargetType,

c# - MVVM:精简 ViewModel 和丰富模型

我一直在与MVVM模式作斗争,并且在尝试为小型/中型项目创建实用设计时遇到了许多挑战。其中一项挑战是弄清楚如何在不创建大量重复且难以维护的代码的情况下获得与此模式分离的好处。我目前的策略是创建“丰富”的模型类。他们充分意识到他们将被MVVM模式消耗并实现INotifyPropertyChanged,允许他们的集合被观察并保持认识到他们可能总是被观察。我的ViewModel类往往很薄,仅在实际需要转换数据时才公开属性,其中大部分代码是RelayCommand处理程序。View很乐意直接绑定(bind)到ViewModel或模型,具体取决于是否需要任何数据转换。我使用AOP(通过Posts

c# - MVC ASP.NET 中的 ViewData 和 ViewModel

我是.Net开发的新手,现在正在学习NerdDinner教程。只是想知道你们中的任何人是否能够告诉我WhatisthedifferencesbetweenViewDataandViewModel(我所知道的是它们用于将某种形式的数据从Controller传递到View)并且可能会告诉我在什么情况下我应该使用ViewData而不是ViewModel,反之亦然提前致谢!莎莉 最佳答案 什么是View数据?将数据放入其中的字典对象,然后变成可供查看。查看数据样本ControllerAction方法喜欢:publicclassHomeCon

c# - 如何将这些 LINQ 结果加载到我的 ViewModel 类中?

我有一个LINQ查询,它返回与我的PictureGallery类匹配的结果。我需要将它们加载到我的ViewModel但我收到以下错误:Cannotimplicitlyconverttype'System.Linq.IQueryable'to'System.Collections.Generic.IEnumerable'.Anexplicitconversionexists(areyoumissingacast?)我是C#的新手。如何将“结果”转换到我的“PictureGallery”viewmddel类中?提前致谢!Controller://TestMediaIDvarMediaID=