App元素在构建整个应用程序时很有用。下表列出了不同类型的Polymer元素。这些组件支持路由,数据存储等功能。
App Layout
App布局元素由工具栏,抽屉和标题等组件组成。这些仅用于标记即可用于构建高质量的响应式布局。下表列出了一些元素。
| 序号 | 元素与说明 |
|---|---|
| 1 | app-box 此元素用作容器,并具有滚动效果,基于滚动位置的视觉效果。 |
| 2 | app-drawer 这是一个导航抽屉,它将从左侧或右侧滑入和滑出。 |
| 3 | app-drawer-layout 这将放置应用程序抽屉和其他内容。 |
| 4 | app-grid 这用于使用自定义属性创建响应式和流体网格布局。 |
| 5 | app-header 此元素在屏幕顶部用作应用程序工具栏的容器,并具有滚动效果,基于滚动位置的视觉效果。 |
| 6 | app-header-layout 此元素用作放置应用程序标题和其他内容的封面。 |
| 7 | app-scrollpos-control 当多个页面共享同一文档滚动器时,此元素用于保存和还原滚动位置。 |
| 8 | app-toolbar 它是一个水平工具栏,其中包含可用于标签,导航,搜索和其他操作的项目。 |
例子
要使用应用程序布局元素,您必须使用命令提示符中的以下命令移至项目目录。
bower install PolymerElements/app-layout --save
上面的命令会将app-layout元素安装在bower_components文件夹中。然后,您必须使用index.htmlfile中的<link>标记导入文件。
<link rel = "import" href = "/bower_components/app-layout/app-layout.html">
<base href = "https://user-content-dot-custom-elements.appspot.com/PolymerElements/app-layout/v1.0.1/app-layout/">
<script src = "../webcomponentsjs/webcomponents-lite.min.js"></script>
<link rel = "import" href = "app-header/app-header.html">
<link rel = "import" href = "app-toolbar/app-toolbar.html">
<link rel = "import" href = "app-box/app-box.html">
<link rel = "import" href = "demo/sample-content.html">
<link rel = "import" href = "../iron-icons/iron-icons.html">
<style is = "custom-style">
html, body {
margin: 0;
font-family: 'Roboto', 'Noto', sans-serif;
-webkit-font-smoothing: antialiased;
background: #f1f1f1;
max-height: 368px;
}
app-toolbar {
background-color: #4285f4;
color: #fff;
}
paper-icon-button + [main-title] {
margin-left: 24px;
}
paper-progress {
display: block;
width: 100%;
--paper-progress-active-color: rgba(255, 255, 255, 0.5);
--paper-progress-container-color: transparent;
}
app-header {
@apply(--layout-fixed-top);
color: #fff;
--app-header-background-rear-layer: {
background-color: green;
};
}
sample-content {
padding-top: 64px;
}
</style>
<app-header reveals>
<app-toolbar>
<div main-title>First App</div>
</app-toolbar>
</app-header>
<sample-content></sample-content><br>
<app-box style = "height: 100px;border-style: groove;">
<div main-title>Welcome to</div>
</app-box>输出
刷新Polymer服务器,然后将显示输出:

App Route
app-route元素利用一个对象,该对象通过route属性来描述有关当前路线的状态。它将使用pattern属性确定状态,并确定与路线有关的一些数据,以及一条包含其余路线的尾部,如以下代码所示:
<app-location route = "{{route}}"></app-location>
<app-route
route = "{{route}}"
pattern = "/:page"
data = "{{routeData}}"
tail = "{{subroute}}">
</app-route>
<app-route
route = "{{subroute}}"
pattern = "/:id"
data = "{{subrouteData}}">
</app-route>下表列出了上述实例的说明:
| 序号 | 栏位及说明 |
|---|---|
| 1 | app-location 它是一个元素,可在浏览器位置栏和应用状态之间提供同步,并生成路由值。 |
| 2 | pattern 通过将route.path属性与pattern属性进行比较来进行匹配。 |
| 3 | app-route 它使用对象设置数据属性,该对象的属性与pattern属性中的参数相对应。它对它们产生的数据对象的双向更改做出响应。 |
| 4 | tail 在将模式应用于匹配的路线后,它代表路线状态的其余部分。 |
Hashes vs Paths
URL路径名的一部分在后端服务器的帮助下由应用程序位置路由使用。可以使用以下属性将应用程序位置配置为使用哈希部分。
<app-location route = "{{route}}" use-hash-as-path></app-location>作者:terry,如若转载,请注明出处:https://www.web176.com/polymer/2289.html
支付宝
微信