Javascript Sammy.JS在app.run上没有自动运行路线?
有没有办法使Sammy.JS在调用app.run()时不会自动调用runRouteJavascript Sammy.JS在app.run上没有自动运行路线?,javascript,sammy.js,Javascript,Sammy.js,有没有办法使Sammy.JS在调用app.run()时不会自动调用runRoute “我的代码”当前在第一次加载时初始化Sammy,但在用户实际单击链接之前,不希望它实际调用任何Sammy路由。您可以尝试将非操作路由传递到run方法。在这种情况下,它可能会忽略散列中的任何路由 否则,您可以在文档根上设置一个侦听器来侦听文档中的单击,然后运行应用程序。但这个解决方案似乎“不够干净” (假设jQuery) 这个问题很老了,但我使用了下面的解决方案,我发现它更干净一些 页面正常加载,Sammy在使用.
“我的代码”当前在第一次加载时初始化Sammy,但在用户实际单击链接之前,不希望它实际调用任何Sammy路由。您可以尝试将非操作路由传递到
run
方法。在这种情况下,它可能会忽略散列中的任何路由
否则,您可以在文档根上设置一个侦听器来侦听文档中的单击,然后运行应用程序。但这个解决方案似乎“不够干净”
(假设jQuery)
这个问题很老了,但我使用了下面的解决方案,我发现它更干净一些 页面正常加载,Sammy在使用.run()时不调用当前路由
$(function () {
var app = Sammy();
$("a").live(function () {
if (!app.isRunning()) {
app.run();
}
});
});
var appIsRunning = false;
var app = Sammy(function() {
this.before('.*', function() {
if (this.path == document.location.pathname && appIsRunning == false) {
return false;
}
});
// The routes...
...
}
// start the application
app.run();
if (app.isRunning()) { appIsRunning = true; }