0

我的应用程序中有两个视图,我想在它们之间共享一个变量,以便在提交字符串时StartView可以在ResultView. 不过,我对映射的工作方式有点困惑。

我在我的组件上下文中创建了一个value attribute被调用的thisthis。然后我在我的 StartView 和我的组件控制器之间创建了一个数据链接。我将 Username 属性从右侧(组件所在的位置)拖到 StartView 上下文中。结果看起来像这样。Username

这就是我卡住的地方:我不知道如何将这个用户名属性从组件引用到 ResultView。显然我需要在两者之间创建一个数据链路但是然后呢?

  • 我是否在 ResultView 上下文中创建一个新的值属性 [这种方式][4]。
  • 或者我是否再次将 Username 属性从组件上下文拖到 ResultView 上下文,就像我对 StartView 所做的那样

基本上我想让这段代码工作:

String headerText = wdThis.wdGetWelcomeComponentController().
wdGetContext().currentContextElement().getUsername();
wdContext.currentContextElement().setHeaderText(headerText);
// headerText is the name of the attribute that I want to create in the ResultView
4

2 回答 2

1

创建从用户名属性(在组件控制器中)到 headertext 属性(在结果视图中)的映射。通常为此,不需要编码。

于 2013-04-18T21:44:20.443 回答
0

如图所示,您的上下文位于控制器中,这是 webdynpro 上的典型方式,您在将属性拖动到视图时定义了这一点。您可以通过箭头确认,在视图的 de 属性中选择属性,您会看到这是一个 WelcomeComponent 属性。

您既可以在新视图中创建新属性,也可以稍后加入这两个属性,或者只是将属性从控制器拖到视图中以创建新属性。最终的结果是一样的,所以我建议你直接用控制器创建它,它的步骤更少。

如果你选择创建一个新的,当你加入两个属性(控制器和视图)时,webdynpro 将强制你有一个控制器来查看关系,你不能让它反转,基于 de MVC 模式 webdynpro 实现。

例如,如果您在视图上有 ant int 属性,而在控制器上有一个字符串属性,则当您创建关系时,控制器属性将保留,视图将更改为字符串,通过属性定义是控制器属性。

于 2013-09-20T23:57:06.280 回答