问题标签 [presenter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - GWTP 奇怪的错误消息(不准确)
所以我真的需要一些有用的提示来解决我在 GWTP 应用程序中遇到的问题,也许你们中的一个人以前遇到过这个问题。所以我使用 GWTP 1.1:
- com.gwtplatform.mvp.Mvp(不带入口点)
- com.gwtplatform.dispatch.Dispatch 与
- com.google.gwt.uibinder.UiBinder
我遇到的问题是,当我遇到客户端错误时(几乎可以在客户端的任何地方,不确定边界在哪里),我会收到一条与 GIN 相关的非常神秘的消息,而不是一条可以帮助我的消息解决问题。似乎与 GWTP 代理有关,这是我得到的典型消息:http: //pastebin.com/YgxPbkru真正的问题不是错误信息向我展示的内容。OpenIcidentPresenter 扩展了 IncidentPresenter,它是我为管理事件的生命周期而制作的 Presenter(在这种情况下),它扩展了我制作的另一个 Presenter,称为 RequestPresenter,这是一个 Presenter,允许用户将 PresenterWidget 类请求到其中(进入该演示者生命周期的任何给定插槽),这扩展了另一个名为 RichPresenter 的演示者,它几乎具有我所有演示者都需要的东西,例如页面加载指示和某些页面锁定等。以下是这些类:
OpenIncidentPresenter
事件主持人
请求演示者
丰富的演示者
我觉得这可能是一个促成因素。我有一大串演示者,我可能实施错误。
这让我很难识别客户端代码中的问题。我必须完成我的更改,还原它们,直到我不再收到此消息。这太荒谬了。如果您发现我做错了什么或需要更多信息,请告诉我!将不胜感激。
干杯! 本
windows-phone-8 - 如何细化inkpresenter WP8的笔画
我正在使用墨水演示器来绘制笔画。但问题是在绘制曲线时,它会绘制锯齿线。直线没有问题。这就是我所做的......我不知道在哪里进行更改以使线条更平滑。
c# - 使用 mvvmcross 显示视图模型时无法解析当前的顶级活动
我在我的 Mvvmcross 应用程序中实现了一个自定义演示者。我想要完成的是:常规导航和片段导航。
在我的主要活动中,我设法基于此示例嵌入了几个片段视图:https ://github.com/i486dx400/MultiRegionPresenter
当片段工作时,我还想展示不作为片段托管的常规活动。因此,我扩展了这个演示者,如下所示:https ://gist.github.com/JelleDamen/7003702
问题/错误: 当我显示第二个活动时,它会显示出来。但是当我返回上一个视图(即主机)并再次重新打开相同的活动时,它不会显示出来。输出日志显示:“mvx:Warning: Cannot Resolve current top activity”
我做错了什么,或者我应该怎么做,以通知框架什么活动是当前的顶级活动?
提前致谢!
ruby-on-rails - Rails:Presenter、Facades 和 Helpers - html 标记在哪里?
在一个相当大的 Rails 应用程序中,我们遇到了视图过于复杂的问题。大多数观点都有太多的逻辑。
视图有 2 到 4 个相关的实例变量,并利用各种逻辑检查和辅助方法来呈现视图。
这是一个假的例子:
演示者、外观和助手:
我一直在研究使用外观和/或演示者模式来帮助在视图中展示我们需要的功能,同时提取和隔离复杂性。
我的问题是:
html在哪里?我是否制作了几个小视图部分并从辅助方法有条件地渲染它们?我是否创建了一个演示者,它具有处理 html 逻辑和输出的方法(使用 content_tag 等)?
任何一般的“最佳实践”或指导将不胜感激。如果我不清楚,请提出问题,我会尽快回复。
view - 模型视图演示者嵌套
我遇到了需要嵌套 MVP 模式的场景。最好用一个可视化的例子来解释:
这就是两个 MVP 层应该如何交互。我的问题是关于两者之间的联系。我可以设想几种将两者联系起来的方法:
- 第 1 层的 Presenter 连接到第 2 层的视图。
- 第 1 层的模型连接到第 2 层的视图。
- 第 2 层的视图是第 1 层(视图包含对第 1 层的 M、V 和 P 的引用)。
- 第 1 层的演示者或模型是第 2层的视图。
如果有的话,哪些是正确的?
然后是它们如何连接的问题。第 2 层视图是否应该引用第 1 层中的对象之一?交互是否应该纯粹基于事件?两者的结合(如果是,参考应该在哪里?)?
我对使用这些类型的模式很陌生,所以任何见解都会受到赞赏。
ruby-on-rails - 使用没有关联模型的演示者(Ryan Bates 的风格)
我想使用演示者(如此处所示:http ://railscasts.com/episodes/287-presenters-from-scratch?view= asciicast )来清理我的 static_pages 视图,但他的方法似乎依赖于底层模型,而 static_pages 没有。我可以将此方法用于我的静态主页吗?
我的用户设置(效果很好并且有相应的模型)如下所示:
Presenter:
Users/Show:
我想使用类似的结构来清理我的_header
部分,它呈现在 中application.html.erb
,其中一部分看起来像这样:
from _header.html.erb:
如何使用演示者将此逻辑移出视图,并让视图显示如下内容:
将必要的视图代码提交给home.html.erb
?
我不确定我是否以最好的方式提出了这个问题,但我的目标是使用像 Ryan Bates 这样的演示者来清理我的 static_pages 视图,这些视图没有相应的模型。
谢谢!
编辑:
我对如何包装静态页面(例如home.html.erb
)以及传递给块的内容以及如何从静态页面引用演示者类中的方法感到特别困惑。
user-interface - DDD/Presenter 模式 VS 用例优化查询
在这本关于领域驱动设计的好书中,有一章专门介绍用户界面及其与领域对象的关系。
让我感到困惑的一点是用例优化查询和演示者之间的比较。
处理最佳查询的摘录(第 517 页)是:
与其读取多个不同类型的完整聚合实例,然后以编程方式将它们组合到单个容器(DTO 或 DPO)中,不如使用所谓的用例优化查询。
这是您使用查找器查询方法设计存储库的地方,这些查找器查询方法将自定义对象组合为一个或多个聚合实例的超集。
查询动态地将结果放入一个值对象 (6) 中,该值对象专门设计用于满足用例的需求。
您设计的是值对象,而不是 DTO,因为查询是特定于域的,而不是特定于应用程序的(DTO 也是如此)。然后,视图渲染器直接使用自定义用例最佳值对象。
因此,优化查询的好处是直接提供特定于视图的值对象,充当真实视图模型。
稍后一页,介绍者模式被描述:
表示模型充当适配器。它通过提供根据视图需求设计的属性和行为来掩盖域模型的细节。
不是要求域模型专门支持必要的视图属性,而是表示模型的责任是从域模型的状态中派生视图特定的指示符和属性。
听起来这两种方式都实现了特定于用例的视图模型的构建。
目前我的调用链(使用 Play Framework)看起来像:
对于查询:控制器(充当发送 Json 的 Rest 接口)-> 查询(通过优化查询返回特定值对象)
对于命令:控制器(充当发送 Json 的 Rest 接口)-> 应用程序服务(命令)-> 域服务/存储库/聚合(应用程序服务返回 void)
我的问题是:如果我已经练习了用例优化查询,那么实现演示者模式有什么好处?如果一个人总是可以使用最佳查询来直接满足客户的需求,那为什么还要打扰演示者呢?
我只是想到了演示者模式的一个好处:处理命令,而不是查询,从而提供命令一些与演示者确定的视图模型相对应的域对象。然后控制器将与域对象分离。事实上,Presenter 描述的另一个摘录是:
此外,用户执行的编辑由演示模型跟踪。
这不是在表示模型上放置重载职责的情况,因为它意味着适应两个方向,模型到视图和视图到模型。
但是,我更喜欢将纯原语发送到应用程序服务(命令),而不是直接处理域对象,所以这个好处不适用于我。
有什么解释吗?
gwt - 如何等待来自其他演示者的 RPC?
我使用 gwt-platform,我有 2 个演示者(MainpagePresenter 和 SecondpagePresenter)。MainpagePresenter 是我的 DefaultPlace。因此,onModuleLoad 我开始使用 rpc 从服务器部分加载数据并将我的数据保存到客户端缓存中。我实现了一个 PopupPanel 来显示这样的加载屏幕:
因此,在成功加载所有内容之前,用户无法单击任何内容。当onSucess()
从 rpc 被调用时,面板将被隐藏。
我的 SecondpagePresenter 从缓存中获取保存的数据onReset()
。
一切正常,但是当我浏览第二页并刷新浏览器时,在收到我的数据之前仍会调用 SecondpagePresenter 的代码。
到目前为止,我发现的唯一解决方案是实现这样的 while 循环:
这会阻止代码继续,但用户必须单击“确定”按钮。
所以我的问题是:有没有办法阻止 SecondpagePresenter 的代码在我的 MainpagePresenter 的数据成功加载之前被调用?
ruby-on-rails - SomeNamespace:Module 的未定义方法“SomePresenter”
我使用命名空间在 Rails 中创建一些模块。它在控制器、模型中运行良好,但在presenters
路径中的演示者出现了问题。
这是演示者之一,没有命名空间:
这是主持人presenters/some_namespace/some_presenter.rb
我得到undefined method 'SomePresenter' for SomeNamespace:Module
错误。可能是什么问题呢。
ruby-on-rails - 我如何在演示者中需要一个帮助文件 - rails
我有一个 Rails 应用程序。我需要在演示者类中使用助手。我使用
require 'number_helper'
并使用了“number_helper”中的“test”方法。它给了我一个错误'undefined method 'test''
。
如何在演示者类中需要帮助文件。如果我使用'include NumberHelper'
它就可以了。我对“要求”的使用有什么问题