我已经建立了一个使用淘汰赛的页面,因为它有很多东西,它的效果非常好。
发生导航时出现我的问题:页面加载 - 效果很好 用户导航离开 - 效果很好 用户按下后退按钮 - 原始分页符
在我看来,一旦页面返回到使用后退按钮,原始绑定仍然存在,然后页面下载其数据并调用 ko.applyBinding,导致绑定应用两次打破页面。
怎么去掉原来的绑定,需要页面绑定到新下载的数据,而不是导航前可用的数据。
任何帮助将不胜感激。
我已经建立了一个使用淘汰赛的页面,因为它有很多东西,它的效果非常好。
发生导航时出现我的问题:页面加载 - 效果很好 用户导航离开 - 效果很好 用户按下后退按钮 - 原始分页符
在我看来,一旦页面返回到使用后退按钮,原始绑定仍然存在,然后页面下载其数据并调用 ko.applyBinding,导致绑定应用两次打破页面。
怎么去掉原来的绑定,需要页面绑定到新下载的数据,而不是导航前可用的数据。
任何帮助将不胜感激。
这是来自: https ://stackoverflow.com/a/13459885/989516的一个想法
ko.unapplyBindings = function ($node, remove) {
// unbind events
$node.find("*").each(function () {
$(this).unbind();
});
// Remove KO subscriptions and references
if (remove) {
ko.removeNode($node[0]);
} else {
ko.cleanNode($node[0]);
}
};