zoukankan      html  css  js  c++  java
  • 使用nodejs将SAP Fiori应用置于本地Launchpad运行

    In the blog Step by step to run your Fiori application locally on NodeJS the steps to run your Fiori application locally by using NodeJS as server are introduced. In that solution, the Fiori application is launched in a standalone mode where sap.ushell.Container is not available. Additionally there is a requirement to put Fiori application to local launchpad as sandbox for unit test purpose.

    Final archievement is: you can see a tile for your Fiori project in the local launchpad.
    Once tile is clicked, you can see your Fiori application in the local shell.

    The major required six steps are logically the same as previous blog.

    Step 1 ~ Step4: exactly the same as steps in previous blog.
    Step 5: the only needed modification on Gruntfile.js is, you should launch a new html page which creates a local launchpad.

    Step 6: Create another html page Sandbox.html.

    Key points

    (1) declare a dummy render and the navigation target application information when a tile is clicked.

    (2) Include sandbox.js :

    (3) In Sandbox.html, instead of using ComponentContainer, now we should create the configured renderer using API sap.ushell.Container.createRenderer to leverage on local launchpad instead.
    The complete source code of my Sandbox.html for your reference:

    <!DOCTYPE HTML>
    <html>
    
        <head>
            <meta http-equiv="X-UA-Compatible" content="IE=edge">
            <title>Jerry's test Fiori application</title>
    
            <script>
            window["sap-ushell-config"] = {
              defaultRenderer : "fiori2",
              renderers: {
                fiori2: {
                  componentData: {
                    config: {
                      search: "hidden"
                    }
                  }
                }
              },
             
              applications: {
                "jerrytestfiori-display": {
                  additionalInformation: "SAPUI5.Component=JerryTest",
                  applicationType: "URL",
                  url: "./",
                  title: "Jerry test Fiori application"
                }
              }
            };
            </script>
    
            <script src="https://sapui5.hana.ondemand.com/test-resources/sap/ushell/bootstrap/sandbox.js" id="sap-ushell-bootstrap"></script>
    
    
            <script src="/resources/sap-ui-core.js"
                    id="sap-ui-bootstrap"
                    data-sap-ui-libs="sap.m, sap.ushell, sap.ui.comp"
                    data-sap-ui-theme="sap_bluecrystal"
                    data-sap-ui-xx-bindingSyntax="complex">
            </script>
    
    
            <script>
                sap.ui.getCore().attachInit(function() {
                        sap.ushell.Container.createRenderer().placeAt("content");
                    });
            </script>
        </head>
    
        <body class="sapUiBody" role="application">
            <div id="content"></div>
        </body>
    
    </html>
    

    In the runtime, once the tile is clicked, my Fiori application is opened:

    The creation of configured render “fiori2” could be debugged from here:

    要获取更多Jerry的原创文章,请关注公众号"汪子熙":

  • 相关阅读:
    今天被编码搞惨了,页面和脚本的编码一致性
    在IE下FLASH背景透明而在FF下不透明的解决方法
    仿FLASH 的大图切换效果 图片切换 jQuery 圣诞节
    仿ABCNEWS 的新闻切换效果
    preventDefault() 方法 取消掉与事件关联的默认动作
    jQuery 投票调查组件
    js常用脚本 判断浏览器
    Django 之 drf 第三篇 视图类 路由的使用
    Django框架之drf 之一 [restful规范 APIview源码分析 Request类分析 序列化组件 ]
    django框架之十一 Auth模块
  • 原文地址:https://www.cnblogs.com/sap-jerry/p/13607072.html
Copyright © 2011-2022 走看看