【发布时间】:2018-01-24 07:26:28
【问题描述】:
喂!后退按钮有时不适用于我的聚合物项目。当我点击返回按钮时,page 变量是当前页面的钢,我需要点击按钮两次或三次才能使其正常工作,例如我从/#/home 转到/#/rules 页面,但它没有去回到/#/home 一旦我第二次或第三次按下后退按钮,它确实会回到主页。这是我的观察者和路由器:
properties: {
page: {
type: String,
reflectToAttribute: true,
observer: '_pageChanged',
},
},
observers: [
'_routePageChanged(routeData.page)',
],
_routePageChanged: function (page) {
this.page = page || 'home';
this.set('route.path', `/${this.page}`);
},
_pageChanged: function (page) {
// Load page import on demand. Show 404 page if fails
var resolvedPageUrl = this.resolveUrl(page + '.html');
this.importHref(resolvedPageUrl, null, this._showPage404, true);
window.history.pushState({}, null, `#/${this.page}`);
},
这是我的app-route 元素:
<app-route route="{{route}}" pattern="/:page" data="{{routeData}}" tail="{{subroute}}"></app-route>
只是无法弄清楚为什么它第一次不起作用。任何帮助表示赞赏,我已经搜索了很多没有结果。
【问题讨论】:
标签: javascript polymer url-routing polymer-1.0