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.txtテキスト2. 画像をスキャンする3. PSDデザイン原画(A...
1. Animate.css の紹介Animate.css は、Web プロジェクトですぐに使用で...
1. コマンドの紹介gzip (GNU zip) コマンドは、ファイルの圧縮と解凍に使用されます。こ...
ソースからApacheをインストールする1. Apacheソースコードをアップロードして必要なソフト...
Nextcloud は、オープンソースで無料のプライベート クラウド ストレージ ネットワーク ディ...
注: データベースのバージョンの問題により、プロジェクトの起動時にエラーは発生しませんでしたが、デー...
JavaScriptは、参考のためにランダムな点呼Webページを作成します。具体的な内容は次のとお...
ある会社の BI 職の面接を受けたとき、面接で SQL に関する質問がありました。一見すると非常に簡...
状況の説明:今日、MySQL データベースのスレーブ ノード ホストにログインしたところ、/var/...
1. Webプロジェクトを作成したら、Tomcatを例にサーバーを構成する必要があります。 2. 実...
MySQL 8.0をインストールする docker run -p 63306:3306 -e MYS...
vue スキャフォールディング -> vue.cli大規模で完全に機能する Vue プロジェク...
目次Dockerを使用してMySQLサービスをデプロイする方法DockerでRedisサービスをデプ...
B ツリーは一般的なデータ構造です。彼と一緒にB+ツリーがあります。ここで、概念を明確にする必要があ...