Покуда в колледже изучали язык программирования ABAP и работа с SAP, мне очень сильно понравился UI SAP, и я очень сильно мечтал что-нибудь такое т.е. UI как у SAP 6.x/7.x только для веба. Где-то лет 5 назад искал в гугле,и наткнулся на OpenUI5. Как-то игрался в него, большое впечатление произвело реализация в стиле - MVC. Единственное я бы не советовал бы этот фреймворк программировать в Eclipse, не знаю как у других, у меня почему-то замерзает Eclipse, что-то там js файлы парзит, а так я прогаю чаще в Far Manager. У меня свежая версия установлена 1.92.
Простой пример:
index.html:
<!DOCTYPE html> <html> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta charset="utf-8"> <title>Простое веб приложение на OpenUI5</title> <script id="sap-ui-bootstrap" src="./resources/sap-ui-core.js" data-sap-ui-theme="sap_bluecrystal" data-sap-ui-libs="sap.m" data-sap-ui-compatVersion="edge" data-sap-ui-preload="async" data-sap-ui-resourceroots='{ "sap.ui.demo.wt": "./" }' > </script> <script> sap.ui.getCore().attachInit(function () { sap.ui.xmlview({ viewName : 'sap.ui.demo.wt.view.App' }).placeAt('content'); }); </script> </head> <body class="sapUiBody" id="content"> </body> </html>
controller/App.Controller.js:
sap.ui.define([ 'sap/ui/core/mvc/Controller', 'sap/m/MessageBox' ], function (Controller, MessageBox) { "use strict"; return Controller.extend('sap.ui.demo.wt.controller.App', { onBtnClick : function () { // Если нажали на кнопку "Назови как меня зовут!" и если поле "Вас зовут" пустое, то... if(!this.getView().byId('name').getValue()) MessageBox.warning('Введите вашем имя!'); // Отображает предупреждение "Введите вашем имя!" else MessageBox.information(`Приветствую вас ${this.getView().byId("name").getValue()}!`); // Называют что ввели в поле "Вас зовут". } }); });
view/App.View.xml:
<mvc:View controllerName="sap.ui.demo.wt.controller.App" xmlns="sap.m" xmlns:mvc="sap.ui.core.mvc" xmlns:l="sap.ui.layout" xmlns:f="sap.ui.layout.form" xmlns:core="sap.ui.core" > <f:SimpleForm layout="GridLayout" editable="true"> <f:content> <Vbox xmlns="sap.m" wrap="Wrap" renderType="Bare"> <Label labelFor="name" text="Вас зовут" /> <Input id="name" name="name" /> </Vbox> <Vbox> <Button text="Назови как меня зовут!" press="onBtnClick"/> </Vbox> </f:content> </f:SimpleForm> </mvc:View>