0

私はSammy jsを試していて、以下に示すように構成しています

 Sammy(function () {

        //get individual email details when an item is clicked
        this.get('#:EmailID', function () { self.openEmail(this.params.EmailID) });

        //get inbox view when default page is visited
        this.get('', function () { self.getInbox() });
    }).run();

問題は、一致が見つからない場合に受信トレイを表示する 2 番目の catch all 関数にあります。すべての JavaScript リダイレクトを傍受します。たとえば、以下に示すように、ユーザーをアカウント ページにリダイレクトするボタンがあります。

<a class="btn" href="~/Users/Account">Account</a>

ただし、このリンクをクリックすると、Sammy によってインターセプトされ、getInbox() 関数が実行されます。window.location の URL が別のページの場合、リダイレクトを許可するにはどうすればよいですか?

4

1 に答える 1

0

以下に示すように、デフォルトのキャッチオール関数に私のベースページのURLを追加することで解決しました

//get inbox view when default page is visited
this.get('User/Messages', function () { self.getInbox() });

これにより、別のページを指している場合に URL リンクがルートによってトラップされるのを防ぎます。

于 2013-07-08T17:00:36.280 に答える