NProgress は、ページがジャンプしたときにブラウザの上部に表示される進行状況バーです。公式ウェブサイト: http://ricostacruz.com/nprogress/ 下の図の上部にあるプログレス バーは非常に一般的であり、 1.
2. ここでのプログレスバーは主にページルーティングのジャンプ処理で使用されるため、 ルートがジャンプする前にプログレスバーの読み込みを開始し、ルートがジャンプした後にプログレスバーの読み込みを終了します。 「vue」からVueをインポートします。 「vue-router」から VueRouter をインポートします。 「@/store」からストアをインポートします。 HomeLayout フォームを "@/views/home/layout" としてインポートします。 「nprogress」からNProgressをインポートします。 「./modules/userCenter」からuserCenterをインポートします。 'nprogress/nprogress.css' をインポートします Vue.use(VueRouter); NProgress.inc(0.2); NProgress.configure({easing:'ease',speed:2000,showSpinner:false,trickle:false}) const ルート = [{ パス:"/"、 名前:"インデックス", リダイレクト:"/index" },{ パス:"/index", 名前:'インデックス', コンポーネント:()=>import ('@/views/home/index.vue')、 meta:{title:'ホームページ'} },{ パス:'/home', 名前:'ホーム', コンポーネント:()=>import('@/views/home/main'), meta:{title:'ホームページ'} },{ パス:'/login', 名前:'ログイン', コンポーネント:()=>import ('@/views/login')、 meta:{title:'ログイン'} },{ パス:'/register', 名前:'登録', コンポーネント:()=>import('@/views/register'), meta:{title:'登録'} },{ パス:'/404', 名前:'404', コンポーネント:()=>import('@/views/errorPage') },{ パス:'*'、 リダイレクト:'/404' }] const ルーター = 新しい VueRouter({ モード: '履歴', ルート }) //ルーティング前にインターセプト router.beforeEach((to,from,next)=>{ //ページがジャンプする前に、プログレス バーを開始します NProgress.start(); // いくつかの傍受操作、ログイン権限など... const token = window.localStorage.getItem('token'); //localstorageからキャッシュを取得 if(to.meta.title){ document.title = to.meta.title; //ブラウザタブのタイトルをページのタイトルに変更します } store.commit('changeCurrentPage',to.path); 定数reg = /[a-zA-Z]+\/$/; //検証を必要としないルートに直接リダイレクトする if(!to.meta.requireAuth){ if (reg.test(to.path)){ 次は、to.path.replace(reg,'') です。 戻る; } 次(); 戻る } if(token&&to.name!=='インデックス'){ // すでにログインしており、リダイレクトされるページはログインページではありません if(reg.test(to.path)){ 次は、to.path.replace(reg,'') です。 戻る; } next();//直接ジャンプできます }else if(token && to.name == 'Index'){ //ログインしていてジャンプしたいページはログインページです if(reg.test(to.path)){ 次は、to.path.replace(reg,'') です。 戻る } next('/home');//ホームページに直接ジャンプします }else if(!token && to.name !='Index'){ //ログインしておらず、ジャンプ先のページがログインページではない next('/index');//ログインページにジャンプ }else{ if (reg.test(to.path)){ 次は、to.path.replace(reg,'') です。 戻る; } 次() } }) ルータ.afterEach(to=>{ NProgress.done(); ウィンドウを0,0にスクロールします。 }) //現在のページ メニューの繰り返しクリックを処理し、警告を発行します。const originalPush = VueRouter.prototype.push; VueRouter.prototype.push = 関数push(location){ 元のPush.call(this,location).catch(err=>err) を返します。 } デフォルトルーターをエクスポートします。 上記の要点は次のとおりです。 プラグインと対応する 3. 4. 3. スタイルを変更する
#nprogress .bar { 背景: #f90 !important; //カスタムカラー} これで、vue Nprogress プログレスバー機能の実装に関するこの記事は終了です。vue Nprogress プログレスバーの関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: MySQL 8.0.17 インストール グラフィック チュートリアル
Docker を初めて使い始めると、通常とは異なる問題に遭遇して、必然的に混乱してしまいます。大丈夫...
ローカル開発では、直接アクセスできない静的ファイル リソースのデバッグが必要になる場合があります。こ...
イベント委任を使用してメッセージ ボード機能を実装します。 <!DOCTYPE html>...
目次1.Linuxログインインターフェース2. コードを書く3. Makefileを書く4. コンパ...
MySQLでホワイトリストアクセスを設定する手順1. ログイン mysql -uroot -pmys...
1. MySQL jdbc ドライバー (mysql-connector-java-5.1.28.j...
目次導入ミラーリポジトリログイン引く押す検索ローカル画像管理画像rmiタグ建てる歴史保存負荷輸入コン...
スクリーン リーダー ソフトウェアの操作ページについて話しているとき、彼はフロントエンドの学生たちに...
入力ボックスへのユーザー入力、ウィンドウのサイズ変更、スクロール、Intersection Obse...
目次マウスジョイント マウスジョイント距離ジョイント距離ジョイントモータージョイント直動ジョイント変...
最初の方法: skip-grant-tables: 非常に便利なmysql起動パラメータ非常に便利な...
IPマスカレードとポート転送Firewalldは2種類のネットワークアドレス変換をサポートしています...
1. Apacheをインストールする $ sudo apt update && su...
Windows 環境と Linux 環境では結果が異なります。ウィンドウズステップ 1: Maven...
まず、変更イベントは 1 つだけです。 changelevel() //値を選択選択を変更して行の値...