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 インストール グラフィック チュートリアル
ステップ: 1. 仮想マシンディレクトリに新しいdocker-compose.ymlファイルを作成し...
目次序文: 1. イベント ループとタスク キューの理由: 2. イベントループメカニズム: 3. ...
InnoDB ストレージ エンジンの主な機能には、挿入バッファ、二重書き込み、適応ハッシュインデック...
まずMySQLにログインする シェル> mysql --user=root mysqlパスワー...
序文lvm (論理ボリューム マネージャー) 論理ボリューム管理は、Linux システムのニーズを満...
目次前面に書かれたログインの概要ログインビジネスプロセスログインサービスの関連技術ポイントログイント...
1. 構成デフォルトでは、最初の 2 つはチェックされていないので、チェックする必要があります。 (...
コア資産管理プロジェクトでは、el-transfer にドラッグ アンド ドロップによる並べ替えと、...
この記事では、Vueを使用して特定の領域に透かしを描く方法を紹介します。具体的な内容は次のとおりです...
序文MySQLでは、準備、実行、割り当て解除を正式にはPREPARE STATEMENTと呼びます。...
目次序文1. Vue2 のライフサイクルインスタンスのライフサイクルその他のライフサイクルフック2....
Linuxインスタンスでシステムディスクを初期化した後、データディスクを再マウントするLinux イ...
この記事では、例を使用して、MySQL のさまざまな一般的な結合テーブルクエリについて説明します。ご...
事前に一言:突然、複数のドメイン名のアクセスを https に転送するというタスクを受け取りました。...