如何在 SAPUI5 中拆分控制器文件?

How to split a controller file in SAPUI5?

我想知道如何拆分 controller.js 文件?我们有一个文件夹“abcd”,在这个文件夹中我们有“controller”、“view”、“manifest.json”以及“Component.js”,在那个“controller”文件夹中,我们有只有一个名为“File.controller.js”的文件。这是一个非常大的文件,这就是我想要 split/extend 这个文件的原因。有人可以在这里分享您的知识吗?提前致谢!

这个机制类似于在面向对象的编程语言中提取新的类。一旦找到可以提取为单独组件的内聚代码片段,您就可以选择创建一个新文件,例如“ExtractedComponent.js”具有以下结构:例如

sap.ui.define([], function() {
 "use strict";

 // implement the extracted functionality here
 ...
}

然后您可以将这个提取的组件用作控制器中的依赖项。将其正确添加到 File.controller.js 即可,例如:

sap.ui.define([
 ...,
/path/to/extracted/component/ExtractedComponent.js
...],
function(..., ExtractedComponent, ...) {
...
});

然后在任何需要的地方使用它。举几个例子,我们提取了管理过滤器、日期格式、OData 客户端等的可重用代码片段。