首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用聚合物和app-route在每次点击时重新加载页面

使用聚合物和app-route在每次点击时重新加载页面
EN

Stack Overflow用户
提问于 2017-02-24 00:19:09
回答 1查看 1K关注 0票数 0

我正在使用app-route和iron-pages和一个纸质工具栏来显示我的视图。

在我的一个视图main-view上,显示了一个随机选择的图像,该图像在每次加载页面时都会发生变化。每次从工具栏中选择main-view时,页面都会重新加载,以便显示新图像。

问题是,如果我已经在/main-view url上并从工具栏中选择它,它不会刷新页面。有没有办法做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-24 22:28:04

你绝对应该添加on-tap来渲染新的图像。你的图像不会改变,因为iron-pages正在观察一些值(在selected属性中指定),所以,当你点击main-view并且路由属性已经有值"main-view“时,观察者将不会触发。

在处理更改的元素上添加on-tap将使其始终触发。一些简单的例子:

代码语言:javascript
复制
<iron-pages selected="{{route}}" attr-for-selected="name">
  <example-element name="main-view" on-tap="handleClick" id="main"></example-element>
  <another-element name="second-view"></another-element> 
</iron-pages>

handleClick函数内部,类似于:

代码语言:javascript
复制
handleClick: function() {
  this.$.main.renderImage();
}

当然,在main-view元素中,您可以声明renderImage函数,它将处理其余的逻辑

别忘了做一些去抖动,因为你不想在1秒内渲染20个新图像。您可以使用聚合物原生debounce函数,您可以在此处阅读更多信息:https://www.polymer-project.org/1.0/docs/devguide/instance-methods

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42421022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档