标签: presentation-model

Presenter,Presentation Model,ViewModel和Controller之间有什么区别?

我很清楚这些模式中的每一个是如何工作的,并且知道它们之间的一些细微差别,但它们真的是彼此之间的差异吗?

在我看来,Presenter,Presentation Model,ViewModel和Controller本质上是相同的概念.

为什么我不能将所有这些概念归类为控制器?我觉得它可能会大大简化整个想法.

任何人都可以清楚地描述他们的差异吗?

我想澄清一点,我确实理解模式是如何工作的,并且已经在一种技术或另一种技术中实现了大部分模式.我真正想要的是某人对这些模式之一的体验,以及为什么他们不会将他们的ViewModel视为一个控制器.

我会给出一些声望点,但我正在寻找一个非常好的答案.

model-view-controller mvp design-patterns presentation-model mvvm

47
推荐指数
4
解决办法
2万
查看次数

SwiftUI 在presentationMode?.wrappedValue.dismiss() 上随机崩溃

这就是崩溃的样子

在此处输入图片说明

所以它在 UIKit 线上随机崩溃

UIKitCore
-[UIViewController _ancestorViewControllerOfClass:allowModalParent:] + 44
Run Code Online (Sandbox Code Playgroud)

我在默认的 SwiftUI 导航堆栈中有视图:

struct MyView: View {
  @EnvironmentObject var viewModel: MyViewModel
  @Environment(\.presentationMode) var presentationMode: Binding<PresentationMode>

var body: some View {
    ZStack {
      ......
    }
    .onAppear {
      self.viewModel
        .onViewAppear(presentationMode: self.presentationMode)
    }
  }
}

final class MyViewModel {
  var presentationMode: Binding<PresentationMode>?

  func onViewAppear(presentationMode: Binding<PresentationMode>) {
    self.presentationMode = presentationMode
  }

  func hide() {
    presentationMode?.wrappedValue.dismiss() // crashes after calling this
  }
}
Run Code Online (Sandbox Code Playgroud)

所以我以这种方式将 MyView 推送到导航堆栈中:

NavigationLink(
      destination: MyView()
    ) {
      Image(systemName: "plus.circle")
        .font(.title)
    }
Run Code Online (Sandbox Code Playgroud)

然后在用户在几秒钟后按下 …

presentation-model uinavigationcontroller swift swiftui environmentobject

9
推荐指数
1
解决办法
424
查看次数

如何将演示模型与Webforms一起使用?

我已经开始使用带有ASP.NET webforms的Presentation Model,并且非常喜欢这种模式.我真正遇到的问题是在哪里实例化我的一些类,主要是表示模型,我的业务对象,以及下拉列表的数据等.所以我可以使用一些提示或演示模型的完整示例(到目前为止我只找到了部分).

asp.net design-patterns presentation-model

6
推荐指数
1
解决办法
806
查看次数

在代码背后使用Presentation Model有哪些主要缺点?

我正在努力为自己做好准备迎接这个问题:

"为什么我们不能在后面的代码中实现表示模型?"

事实上,我参与了一个项目,我们使用了一个在后面的代码中实现的表示模型.它运作得相当好,我们甚至可以对它进行单元测试.是的,你在单元测试中依赖于WPF ......但它确实有效!

那么,使用代码背后的主要缺点是什么?

我更喜欢独立ViewModel(MVVM)的想法,但目前我觉得无法向客户证明这一点.

.net wpf presentation-model mvvm

5
推荐指数
1
解决办法
603
查看次数

ViewModel模式最大的痛点是什么?

Glenn Block和我一直在合作开发ViewModel模式.我们一直在努力确定与模式相关的最大痛点,目标是增加框架支持以减轻疼痛.

今晚,格伦发布了"观看模特" - 电影,投了你的选票.我们希望收到你的来信.请在此处发布(并投票)了解实现ViewModel模式(也称为Model-View-ViewModel或MVVM)的最大痛点.告诉我们框架如何让您的生活更轻松!

我们正在寻找WPF和Silverlight.

那么请告诉我们,您希望框架做些什么来使ViewModel更容易?

presentation-model mvvm viewmodel

3
推荐指数
1
解决办法
995
查看次数

2
推荐指数
1
解决办法
4428
查看次数