聚合物入门套件路线
Posted
技术标签:
【中文标题】聚合物入门套件路线【英文标题】:Polymer starter kit Routes 【发布时间】:2015-08-27 07:06:23 【问题描述】:使用 Polymer 入门套件,我试图从 JS 触发路线更改,但无法使其正常工作。虽然路由发生了变化,但是我在浏览器中再次前进后,路由不再被触发(page.js无法读取读取长度),这是更改路由的正确方法吗?
(function()
Polymer(
is: 'my-greeting',
properties:
greeting:
type: String,
value: 'Enter username',
notify: true
,
pass:
type:String,
value: '***',
notify: true
,
buttonClicked : function()
this.doLogin();
,
doLogin : function()
console.log(this.greeting);
app.myFirebaseRef.authWithPassword(
"email": this.greeting,
"password": this.pass
, function(error, authData)
if (error)
console.log("Login Failed!", error);
else
// THIS IS IT
app.route = 'users';
history.pushState(customurl:'users', null, 'users');
);
);
)();
【问题讨论】:
尝试 page.show('/users') 或简单地 page('/users')。至于设置您的 Polymer 应用程序以在更改路线时显示正确的页面,我建议您参考 Polymer Start Kit 示例。它使用 page.js。 谢谢,入门工具包仅使用由 触发的路由。我需要在回调后使用 JS 来执行此操作。这就是让它与众不同的原因。我会放手的 这么简单,不能早点运行,谢谢! 【参考方案1】:您不应该尝试使用app.route = "foo"
更改您的视图,因为它不会反映在您的网址中
无论如何,可以尝试使用这个元素https://github.com/MartinsThiago/easy-router 像这个例子一样简单地定义你的路线
<template is="easy-router" path="#!/route1">
<span>route1</span>
</template>
<template is="easy-router" path="#!/route1/nested1">
<span>route1/nested1</span>
</template>
ps:如果您需要使用此元素更改您的 url,请执行 location.hash = "#!/your_route"
或 window.location.hash = "#!/your_route"
【讨论】:
以上是关于聚合物入门套件路线的主要内容,如果未能解决你的问题,请参考以下文章