如何使用流星 FlowRouter.reload()
How to use Meteor FlowRouter.reload()
我找到了 FlowRouter.reload() 的 FlowRouter 文档,但我找不到具体的代码示例,也无法使其正常工作。
在我的应用程序中,我有一个模板使用一些巧妙的 javascript(同位素)在页面调整大小时重新定位元素。有时用户离开,调整浏览器 window,然后 returns - 到一个混乱的页面,应该刷新并重绘以重新定位元素以重新调整大小 window。
这是我的路线。我如何使用 FlowRouter.reload() 到 reload/refresh 只是 "work" 模板区域?或者,我如何将它用于 reload/refresh 整个布局模板或 window?
FlowRouter.route( '/work', {
action: function() {
BlazeLayout.render( 'body-static', {
content: 'work',
});
},
});
以防万一有人来到这里,在 Hugh 在 Meteor 论坛的大力帮助下解决了这个问题。
解决方案没有使用reload。相反,它利用 FlowRouter 中的触发器来检查模板是否正在重新加载,如果是则刷新它,然后在刷新后停止以防止无限循环。
结果如下。
// handle refreshing div on every load of div
let fireReload = false;
function reloadCheck(context, redirect, stop) {
if (fireReload) {
console.log('Hugh is Awesome and also reloading screen...');
FlowRouter.reload();
stop();
}
}
function routeCleanup() {
fireReload = !fireReload;
}
FlowRouter.route('/work', {
action: function() {
BlazeLayout.render( 'body-static', {
content: 'work',
});
},
triggersEnter: [reloadCheck],
triggersExit: [routeCleanup]
});
我找到了 FlowRouter.reload() 的 FlowRouter 文档,但我找不到具体的代码示例,也无法使其正常工作。
在我的应用程序中,我有一个模板使用一些巧妙的 javascript(同位素)在页面调整大小时重新定位元素。有时用户离开,调整浏览器 window,然后 returns - 到一个混乱的页面,应该刷新并重绘以重新定位元素以重新调整大小 window。
这是我的路线。我如何使用 FlowRouter.reload() 到 reload/refresh 只是 "work" 模板区域?或者,我如何将它用于 reload/refresh 整个布局模板或 window?
FlowRouter.route( '/work', {
action: function() {
BlazeLayout.render( 'body-static', {
content: 'work',
});
},
});
以防万一有人来到这里,在 Hugh 在 Meteor 论坛的大力帮助下解决了这个问题。
解决方案没有使用reload。相反,它利用 FlowRouter 中的触发器来检查模板是否正在重新加载,如果是则刷新它,然后在刷新后停止以防止无限循环。
结果如下。
// handle refreshing div on every load of div
let fireReload = false;
function reloadCheck(context, redirect, stop) {
if (fireReload) {
console.log('Hugh is Awesome and also reloading screen...');
FlowRouter.reload();
stop();
}
}
function routeCleanup() {
fireReload = !fireReload;
}
FlowRouter.route('/work', {
action: function() {
BlazeLayout.render( 'body-static', {
content: 'work',
});
},
triggersEnter: [reloadCheck],
triggersExit: [routeCleanup]
});