sapui5 - SAPUI5 中存储常量的最佳实践是什么?

标签 sapui5

我想知道在 SAPUI5 中存储常量(字符串、数字或 URI)的最佳实践是什么。我想不建议将它们放在 View 或 Controller 中。我正在考虑选择 i18n。或创建 View 模型。或创建一个新的 .json 文件。如果为其创建 .json 模型是最佳实践,那么下一个问题就是将此 .json 文件放在 SAPUI5 项目的标准文件夹结构中的何处。

最佳答案

SAPUI5 基于Asynchronous Module Definition因此我们可以简单地创建一个包含所有常量的模块定义,就像我们在 CRA 和 angular-cli 等其他脚手架中看到的类似模式一样。

因此,我们可以在 webapp 文件夹中创建一个名为 Constants.js 的文件,然后添加 URL 和其他常量,如下所示:

// webapp/Constants.js
sap.ui.define([],
function() {
    'use strict';

    var constants = {
        BASE_URL: 'http://localhost:8080',
        SOME_API_PATH: '/api/some',
        REQUEST_HEADERS: {
            'X-XSRF-TOKEN': 'something-else'
        },
        ANOTHER_CONSTANT: 'something'
    };

    return constants;
});

然后,我们可以通过将常量添加到依赖项数组中来在任何需要的地方导入常量:

// SomeController.js
sap.ui.define([
    '<PROJECT_NAME>/Constants'
], function(Constants) {
  console.info(Constants.BASE_URL);
});

.env 文件也可以是基于环境的常量的选项,但是,我认为这超出了您的问题范围。

关于sapui5 - SAPUI5 中存储常量的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44659655/

相关文章:

javascript - OpenUI5 ComboBox - 如何设置默认键/值

javascript - SAPUI5 检查 View 中的模型属性

sapui5 - 如何在 Controller 中获取选定的单选按钮

javascript - 在sapui5片段的xml文件中使用jquery

css - SAPUI5 如何实现阈值 slider (如在 WebDynpro 中)

sapui5 - 我可以更改表单上的列顺序吗?

javascript - 如果内容是 PAGE,SAP UI5 Popover 无法正确显示内容

css - 如何覆盖 CSS

javascript - SAP UI 5中如何选择所有输入类型

java - SAPUI5应用程序中调用Servlet显示404错误