Screen、Client、Server Action

440 阅读2分钟

访问权限

image.png

Screen Action

屏幕操作是屏幕本地的操作。它只能由屏幕元素(在Web中)调用,如按钮或链接,或由Web块的通知调用。在Mobile中,屏幕动作也可以相互调用。屏幕动作具有屏幕的局部作用域(在屏幕外是不可见的),并且可以访问所有屏幕输入参数、屏幕局部变量和小部件。屏幕动作要么在服务器(Web)上运行,要么在设备(移动)上运行。使用屏幕操作来实现特定于屏幕的简单逻辑。

  • screen action的使用有哪些范围限制? 仅限创建屏幕范围内使用

Server Action

服务器动作是总是在服务器上执行的动作,在Web和移动中都是如此。由于Web应用程序在整个服务器上运行,这是Web应用程序唯一可用的操作类型。当移动应用程序调用服务器操作时,它需要在线(因为它必须到达服务器才能执行操作)。当你需要抽象一些业务逻辑或核心逻辑或领域特定逻辑时,在Web应用程序中使用服务器操作。只有在你无法避免的情况下才在移动应用中使用服务器操作(例如在同步数据时),因为它会导致性能损失(因为调用服务器并等待它的响应)。

  • server action 不可以调用 client action;
  • server action 可调用(单个或多个)server action;

image.png

Client Action

客户端动作是移动版的服务器动作。在设备上运行,而不是在服务器上运行。因此,客户端操作仅适用于移动应用程序。它们的用途,像服务器动作一样,是抽象逻辑。

  • client action 可以调用client action
  • client action 可以调用server action

image.png 从OutSystems 11开始,有第四种类型的操作,称为服务操作。这些非常像服务器操作,但与REST方法(可能是另一种类型的操作)共享一些属性,因为调用它们只会创建对所在模块的“弱”引用(而不是正常的“强”引用)。但如果你刚刚开始使用OutSystems,我现在就不考虑它们了。