vue 動(dòng)態(tài)給每個(gè)頁(yè)面添加title、關(guān)鍵詞和描述的方法
前言:直接寫html加title和關(guān)鍵詞想必大家都知道怎么去加,但用vue框架開發(fā)的項(xiàng)目我們?cè)趺慈?dòng)態(tài)的給每個(gè)頁(yè)面添加呢 ↓
先在router.js里面配置我們的title、關(guān)鍵詞和描述
{ path: '/train', name: 'Train', component: () => import('../components/page/Train.vue'), meta: { title: '教師培訓(xùn)-恩啟官網(wǎng)', content: { keywords: '教師培訓(xùn)、恩啟培訓(xùn)、恩啟云課堂、特教老師、線上服務(wù)、徐紫薇、王學(xué)鋼', description: '恩啟教師培訓(xùn)專注于自閉癥行業(yè)教師專業(yè)技能提升培訓(xùn),評(píng)估師培訓(xùn)。為自閉癥康復(fù)教師提供科學(xué)、系統(tǒng)的在線課程、咨詢服務(wù)。' } } },
在main.js里用beforeEach(前置守衛(wèi))判斷
router.beforeEach((to, from, next) => { if (to.meta.content) { let head = document.getElementsByTagName('head'); let meta = document.createElement('meta'); document.querySelector('meta[name="keywords"]').setAttribute('content', to.meta.content.keywords) document.querySelector('meta[name="description"]').setAttribute('content', to.meta.content.description) meta.content = to.meta.content; head[0].appendChild(meta) } if (to.meta.title) { document.title = to.meta.title; } next() });
這樣就行了。
后續(xù)補(bǔ)充:vue的特點(diǎn)呢就是組件系統(tǒng)跟數(shù)據(jù)驅(qū)動(dòng),嗯,是特別方便的,比如我們一個(gè)組件里根據(jù)路由狀態(tài)值判斷初始化加載不同的頁(yè)面(比如在前一個(gè)頁(yè)面有三個(gè)按鈕:北京、上海、深圳)點(diǎn)擊進(jìn)去不同的城市頁(yè)面,但我們的頁(yè)面都是用的同一個(gè)組件,如下路由配置:↓
{ path: '/cityDetail', name: 'CityDetail', component: () => import('../components/page/CityDetail.vue'), meta: { title: '', content: { keywords: '', description: '' } } },
這里我們?cè)賠outer.js里沒進(jìn)行關(guān)鍵詞的填寫,因?yàn)樗泻脦讉€(gè)不同城市加載,我們可以在對(duì)應(yīng)的組件里加個(gè)判斷
if(orgUrl == 'beijing'){ document.querySelector('meta[name="keywords"]').setAttribute('content', '北京教研中心,恩啟教研中心,IEDA教研中心') document.querySelector('meta[name="description"]').setAttribute('content', '恩啟誕生于2014年 ,是一家專業(yè)的自閉癥康復(fù)機(jī)構(gòu)。北京教研中心,位于北京市朝陽區(qū)孫河地鐵站對(duì)面弘園五號(hào)創(chuàng)意生活園A5,聯(lián)系方式13021253543,北京教研中心。') document.title = '恩啟IDEA·北京教研中心-直營(yíng)連鎖-恩啟官網(wǎng)'; }else if(orgUrl == 'shanghai'){ document.querySelector('meta[name="keywords"]').setAttribute('content','上海靜安教研中心,恩啟教研中心,IEDA教研中心'); document.querySelector('meta[name="description"]').setAttribute('content', '恩啟IDEA靜安中心坐落于上海市大寧中心廣場(chǎng),毗鄰大寧音樂中心,交通便利,生活便捷。'); document.title='恩啟IDEA·上海靜安教研中心-直營(yíng)連鎖-恩啟官網(wǎng)'; }
這樣設(shè)置就ok了;
總結(jié)
到此這篇關(guān)于vue 動(dòng)態(tài)給每個(gè)頁(yè)面添加title、關(guān)鍵詞和描述的方法的文章就介紹到這了,更多相關(guān)vue 添加title、關(guān)鍵詞和描述內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue-socket.io接收不到數(shù)據(jù)問題的解決方法
這篇文章主要介紹了解決vue-socket.io接收不到數(shù)據(jù)問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05在vue中使用echarts(折線圖的demo,markline用法)
這篇文章主要介紹了在vue中使用echarts(折線圖的demo,markline用法),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-07-07Vue如何實(shí)現(xiàn)利用vuex永久儲(chǔ)存數(shù)據(jù)
這篇文章主要介紹了Vue如何實(shí)現(xiàn)利用vuex永久儲(chǔ)存數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04Vue實(shí)現(xiàn)動(dòng)態(tài)查詢規(guī)則生成組件
今天我們來給大家介紹下在Vue開發(fā)中我們經(jīng)常會(huì)碰到的一種需求場(chǎng)景,本文主要介紹了Vue動(dòng)態(tài)查詢規(guī)則生成組件,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05Vue輸入框狀態(tài)切換&自動(dòng)獲取輸入框焦點(diǎn)的實(shí)現(xiàn)方法
這篇文章主要介紹了Vue輸入框狀態(tài)切換&自動(dòng)獲取輸入框焦點(diǎn)的實(shí)現(xiàn),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-05-05如何解決npm i下載依賴的時(shí)候出現(xiàn)某依賴版本沖突
這篇文章主要介紹了如何解決npm i 下載依賴的時(shí)候出現(xiàn)某依賴版本沖突問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03Vue為什么要謹(jǐn)慎使用$attrs與$listeners
這篇文章主要介紹了Vue為什么要謹(jǐn)慎使用$attrs與$listeners,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08vue搜索高亮popsearch組件的實(shí)現(xiàn)示例
有時(shí)候給頁(yè)面內(nèi)容添加一個(gè)關(guān)鍵詞搜索功能,如果搜索結(jié)果能夠像瀏覽器搜索一樣高亮顯示,那找起來就會(huì)很明顯體驗(yàn)會(huì)好很多,本文就來介紹一下vue搜索高亮popsearch組件的實(shí)現(xiàn)示例,感興趣的可以了解一下2023-09-09