2010-12-20 11 views

Odpowiedz

9

Według documentation for Sammy routes,

Ścieżki mogą być zdefiniowane jako ciągi lub wyrażeń regularnych.

Jako takie, powinno być możliwe, aby utworzyć trasę tak, na końcu swoich tras, to catch-all:

get(/.*/, function() { 
    ... 
}); 
+1

minor point - zanotuj brak cytatów, to jest dosłowne wyrażenie regularne. "/.*/" różni się znacznie od /.*/ –

+0

Jednym z problemów z tym podejściem jest to, że twoja trasa będzie wychwytywać nawet linki, które będą prowadzić z dala od twojej strony. Prawdopodobnie tego nie chcesz. – jpbochi

+0

Podczas testowania za pomocą pojedynczej aplikacji strona działała i nie uruchamiała się podczas przechodzenia do innej strony. –

23

powinien zastąpić funkcję notFound.

Jak to:

var app = $.sammy('#app', function() { 
    this.notFound = function(){ 
    // do something 
    } 
}); 

To recommended autor Sammy.

+1

To powinna być zaakceptowana odpowiedź. – Brandon

+0

Jest to odpowiednie do implementacji zdarzenia 404 Not Found, ale jako ścieżka catch-all nie jest tak praktyczne, ponieważ 'this' będzie' Application', a nie 'EventContext'. Więc nie będzie właściwości takich jak 'path' i' params'. –

Powiązane problemy