sapui5:最初加载NDA页面并稍后加载Shell

时间:2014-12-02 12:03:30

标签: sapui5

使用登录后我的要求如下: - 用户将首先看到一个nda协议页面,他必须在该页面上签名并提交 - 然后在sumit之后,它必须加载shell然后与shell中的其他屏幕相连接

这里的关键是,如果用户刷新屏幕的任何时候......它应该总是把他带到shell而不是nda屏幕。因为我们要记住用户的决定,只加载shell。

-wt是处理这个的最好方法吗? -i希望(更喜欢)只在同一个ui5项目中这样做..而不是2个不同的项目。 - 我们如何记住用户的决定?它是ui5中的一种会话处理! - 我们从nda页面到shell使用content.plastAt()吗?如何实现这个..!

2 个答案:

答案 0 :(得分:0)

您可以通过几种方式执行以下操作,让我们解决NDA记忆功能。

例如,您可以使用javascript的会话存储API,这将确保刷新将保留该值,但是全新的会话将再次显示NDA。

现在,如果您想要基于Ui5的NDA解决方案,您可以将第一个屏幕设置为NDA,并在提交按钮中导航到下一页并从外壳中分离NDA页面。

实现此目的的另一种方法是使用带有NDA的模态弹出窗口,然后单击即可删除弹出窗口 并将数据保存在会话存储中。

希望这给了你一个清晰的想法。 BR, 萨尔

答案 1 :(得分:0)

您需要使用会话存储来满足您的要求     在NDA登录页面上检查sessionStorage数据和NDA的控制器中写入此代码

onInit: function() {
            var oView = this.getView();
            oView.addEventDelegate({
            onBeforeShow : jQuery.proxy(function(evt) {
                this.onBeforeShow();
            }, this)
        });


    },
onBeforeShow: function(){

        if(SessionStorage['UserName'])
        {

                sap.ui.getCore().getEventBus().publish("nav", "to", { 
                    id : "idShell",//id to navigate to shell Page
                    data : {}
                });
        }   
            else
                {
                   // DO SOMTHING

                }

}