在PSK中,index.html引用了my-app.html模板。在那里我有我的主要布局app-drawer,header ect ..
我如何拥有一个没有该模板的页面,例如带有登录字段的居中卡片。
我是否以某种方式使用my-app.html只为每个包含嵌套布局?
index.html
-my-app.html
--main-shell.html (main content with iron-pages)
--blank.html (for signup/login)
感谢。
答案 0 :(得分: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处理的,我没有表现出来(为了简单起见)。