2016-09-28 68 views
0

在PSK中,index.html引用了my-app.html模板。在那裏,我有我的主要佈局與應用程序抽屜,標頭等..2聚合物佈局(即:主應用,註冊)

然後我如何有一個頁面沒有該模板,只有例如一箇中心卡與登錄字段。

難道我以某種方式使用my-app.html只包含每個嵌套的佈局?

index.html 
-my-app.html 
--main-shell.html (main content with iron-pages) 
--blank.html (for signup/login) 

謝謝。

+0

如果您沒有將「'''''元素添加到主體只是空白,那麼您可以在驗證成功時動態創建它 – adaliszk

回答

1

我建議那些要求,my-app元素下創建一個my-session元素處理驗證和一個my-pages元素來管理應用程序本身。在my-session之內,如果需要的話,我取消隱藏登錄元素(我允許用戶使用經過身份驗證的cookie在未登錄的情況下訪問應用程序)。

my-app的輪廓是這樣

<app-header-layout> 
    <app-header 
    fixed 
    effects="waterfall"> 
    <app-toolbar> 
     ... 
    </app-toolbar> 
    </app-header> 
    <my-session id="session" user="{{user}}"></my-session> 
    <my-pages 
    id="pages" 
    user="[[user]]" 
    unresolved 
    hidden="[[!isLoggedOn]]" >APPLICATION LOADING</my-pages> 
</app-header-layout> 

my-session然後有一個my-login元素將包含在頁面

這中間集中在一個paper-card登錄表單用

<dom-module id="my-session"> 
    <template> 
    <style> 
    [hidden] { 
     display: none!important; 
    } 
    </style> 
    <iron-ajax 
     id="validateuser" 
     url="/api/validate_user" 
     handle-as="json" 
     method="POST" 
     body="{}" 
     content-type="application/json" 
     on-response="_validated"></iron-ajax> 
    <iron-ajax 
     id="logoff" 
     url="/logoff" 
     body="{}" 
     handle-as="json" 
     method = "POST" 
     content-type="application/json"></iron-ajax> 
    <my-waiting waiting="[[waiting]]"></my-waiting> 
    <my-logon user="{{user}}" hidden="[[!needsLogon]]"></my-logon> 
    </template> 
    <script>...</script> 
</dom-module> 

iron-ajax請求將驗證用戶cookie(我仍然要求服務器驗證它,因爲它包含加密的令牌)並記錄用戶。這一切都在JavaScript中處理,我不顯示(爲簡單起見)。

+0

感謝您的詳細回覆! – Rhys