我正在使用meteor,因此它有自己的基于把手的模板方法
在大多数示例中,我已经看到Backbone的路由方法,他们使用警报或其他东西,但对如何实际更改页面内容有点困惑
我用:
var fragment = Meteor.ui.render( function () {
return Template["page"]();
});
$('#content').html(fragment);
我也有
<template name="page">...</template>
当然这确实有效,但是如果我用url#page
加载页面它不会起作用,因为在加载DOM之前加载了$('#content')
,所以它不会做任何事情。但它通常会将页面上的超链接用于url#page
。
我如何解决它,以便在将页面加载为URL时加载页面而不会破坏它在超链接中的使用。我的范例是否正确使用?
答案 0 :(得分:1)
在内容模板中添加loadPage
帮助器,然后在该模板帮助器中将Backbone路由代码放在Meteor.defer(function() { ... });
内,这将使您的路由代码在添加内容模板后运行DOM,因此jQuery可以访问。