【发布时间】:2018-04-21 14:10:37
【问题描述】:
我有一种情况,用户被重定向到一个模板(比如 I )。 在模板 I 中,有一个条件可以确定我们是否应该渲染该模板或重定向到其他地方。
我现在的做法是检查Template.I.onCreated() 中的条件,如果条件为真,则将window.location.href 放入新的网址。
但这有时会导致模板 I 在重定向之前短暂出现在屏幕上。
我需要一种方法来阻止这种情况的发生。我认为 onCreated() 在 onRendered() 之前触发,所以它应该阻止它。但这似乎仍然不起作用。
【问题讨论】:
-
最好在路由器中这样做
-
@MichelFloyd 是正确的 - 最好让路由器控制它而不是手动更改窗口位置。您能描述一下您正在检查的情况吗?
-
@MichelFloyd 我不想使用路由器,因为被重定向到的页面位于一个新模板中,其中有一些脚本在我完全重新加载页面之前不会加载。似乎 Iron 路由器不允许我们运行嵌入在模板片段中的脚本(是吗?)
-
您是否尝试使用外部脚本?在单页应用程序中,您永远不需要“重新加载”任何页面,这意味着某些内容已损坏。
-
@ᴄʜaᴢsᴏʟᴏ 我努力使用 Iron 路由器的
onBeforeAction修复它,效果很好。为什么我使用外部脚本在我之前的评论中
标签: meteor meteor-blaze