vue-router使用過程遇到的問題

初學(xué)vue問題記錄

問題一、vue-router使用過程遇到的登錄頁空白問題

之前用vue-cli創(chuàng)建了一個vue項(xiàng)目,默認(rèn)使用vue-router,目錄結(jié)構(gòu)中自帶了router目錄,里面有index.js


但是當(dāng)我又創(chuàng)建一個項(xiàng)目的時候默認(rèn)沒有使用vue-router時,后面我使用npm install vue-router安裝了插件之后項(xiàng)目中沒有自動創(chuàng)建router目錄。查找資料顯示說這種方式不會創(chuàng)建router目錄,自己就把前面創(chuàng)建的項(xiàng)目的router目錄及里面的文件拷貝過來使用。

使用的過程中,新建立的項(xiàng)目我自己單獨(dú)寫了一個Login.vue,想把這個登錄頁面作為首頁,使用vue-router配置。我就修改了router目錄的index.js。如下:


main.js中引入router.js。如下:


到這里就是我找到的資料要配置登錄頁的,加上我不使用router-link,我就沒有修改App.vue。我以為都配置完成了,就直接啟動項(xiàng)目,發(fā)現(xiàn)頁面空白。后來才發(fā)現(xiàn)App.vue中沒有使用<router-view></router-view>。在App.vue加入<router-view></router-view>啟動就成功顯示登錄頁面了。


總結(jié):使用vue-router,

1.需要在router目錄的index.js維護(hù)好路由

2.main.js中引入router下文件

3.App.vue中使用router-view


最后還發(fā)現(xiàn)了一個問題,用 http://localhost:8080/訪問title上的favicon沒有顯示;


用http://172.17.112.40:8080/訪問title上的favicon就能顯示


通過測試發(fā)現(xiàn),好像是瀏覽器緩存問題,清除瀏覽器緩存又可以正常顯示了。

問題二、使用vue-router過程中,子路由不顯示問題

問題描述,我的項(xiàng)目是一個登錄頁面,項(xiàng)目默認(rèn)顯示登錄頁面;登錄成功后顯示登錄成功后的默認(rèn)頁面,我的默認(rèn)頁面是由header公共導(dǎo)航和內(nèi)容組件組成,這個時候出現(xiàn)了問題,header部分組件顯示正常,但是內(nèi)容組件不顯示。經(jīng)過分析查閱資料是因?yàn)楦嘎酚山M件沒有使用router-view導(dǎo)致的。我的header組件是由兩個組件組成的,就在header組件內(nèi)加上router-view登錄成功后的默認(rèn)頁面就顯示正常了。


HeadLayout.vue中增加router-view,解決子路由不顯示問題


總結(jié):要使用路由一定要在使用router-view,要在父級組件中使用。

問題三、子路由跳轉(zhuǎn)問題

問題描述:原本MainMenu.vue中使用的是a鏈接,我添加的click方法進(jìn)行路由切換,但是總是失敗,切換后一閃第二個頁面的內(nèi)容,然后又顯示第一個頁面內(nèi)容。寫法如下:


第二個子路由頁面內(nèi)容閃一下


最終顯示第一個子路由頁面內(nèi)容


這個a鏈接click的問題原因出現(xiàn)在href上,我只是清空了里面的內(nèi)容,需要刪除該屬性,或者將值改為href="javascript:;",

解析參照:https://www.cnblogs.com/fairy62/p/9486979.html

自己換成router-link實(shí)現(xiàn)路由切換,可以正常切換。另外要在router-link上使用click方法切換路由,而不使用to屬性,需要使用native修飾符。@clike.native


但是還有一個問題就是我加了一個樣式,給router-link,想讓激活的link帶背景色。我這種寫法兩個都有這個樣式

.router-link-active {

background: #848484;

}

效果如下:

于是我又棄用click了,直接使用to屬性才沒有問題。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • PS:轉(zhuǎn)載請注明出處作者: TigerChain地址http://www.itdecent.cn/p/9a7d7...
    TigerChain閱讀 64,311評論 9 218
  • 一、前言 要學(xué)習(xí)vue-router就要先知道這里的路由是什么?為什么我們不能像原來一樣直接用 標(biāo)簽編寫鏈接哪?...
    浪里行舟閱讀 68,152評論 12 203
  • 概述 前端路由路由就是根據(jù)不同的url地址來展示不同的內(nèi)容或頁面.Vue Router 是 Vue.js 官方的...
    _羊羽_閱讀 1,720評論 0 0
  • 1、安裝vue-cli腳手架 a.下載安裝node.js,隨包同時也安裝了npm;b.安裝vue-cli:npm ...
    半眼魚閱讀 6,864評論 0 1
  • 16宿命:用概率思維提高你的勝算 以前的我是風(fēng)險(xiǎn)厭惡者,不喜歡去冒險(xiǎn),但是人生放棄了冒險(xiǎn),也就放棄了無數(shù)的可能。 ...
    yichen大刀閱讀 7,720評論 0 4

友情鏈接更多精彩內(nèi)容