2017-02-28 1 views
0

私はRouter5を使用して非常に基本的なクライアント(つまり本質的にはウェブサイト)を作っています。ユーザーがボタンをクリックしたときに、不要な要素が隠されるようにコードを設定しました(クラスhiddenが追加されています)。表示したい要素にはhiddenクラスが削除されています。よく働く。しかし、私が非index状態にあり、私がリフレッシュすると、index状態の要素が再び現れます。Router5でビューの状態を更新すると、別のビューの一部が再現されます

コンソールでデバッグのために調べました。私がリフレッシュすると、インデックスビューのhiddenクラスが削除されてしまい、その理由がわかりません。

私は比較的新しいコーディングをしていますので、これを手に入れることができれば助かります。

これは私の移行コードです。私が言ったように私は他の1つのビューからつもりだとき、それは動作しますが、私はindexないビューを更新すると、index要素の一つが再び表示されます:

const transition = function() { 
    return (toState, fromState, done) => { 
    if (fromState) { 
     $(`#${fromState.name}`).addClass('hidden'); 
    } 

    $(`#${toState.name}`).removeClass('hidden'); 

    done(); 
    }; 
}; 

その他の関連するコードを:

const routes = router.rootNode.children.map((route) => { 
    return route.name; 
}); 

const registerPaths =() => { 
    routes.forEach((route) => { 
    $(`a[href="#${route}"]`).on('click', (event) => { 
     event.preventDefault(); 

     router.navigate(route); 
    }); 
    }); 
}; 


$(document).ready(function() { 
    require('./router/index').start(); 
    require('./router/events').registerPaths(); 
}); 

私はそれがすべてだと思います。他のコードを参照する必要がある場合は、私にお知らせください。

ありがとうございます!

答えて

0

DEFAULTビューの状態でも、HTMLに.hiddenクラスが必要であるという問題がありました。私はまだルータについてもっと学んでいます!

関連する問題