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

