在 Vue SPA 應用中,如果想要修改 HTML 的頭部標簽,如頁面的 title ,我們只能去修改 index.html 模板文件,但是這個是全局的修改,如何為每個頁面都設置不一樣的 title 呢?下面介紹兩種方法。
使用router.meta
在路由里面配置每個路由的地址:
routes: [ { /* (首頁)默認路由地址 */ path: '/', name: 'Entrance', component: Entrance, meta: { title: '首頁入口' } }, { /* 修改昵稱 */ path: '/modifyName/:nickName', name: 'modifyName', component: modifyName, meta: { title: '修改昵稱' } }]在每一個 meta 里面設置頁面的 title 名字,最后在遍歷
router.beforeEach((to,from, next) => { /* 路由發生變化修改頁面title */ if (to.meta.title) { document.title = to.meta.title } next();});這樣就為每一個VUE 的頁面添加了title。
使用vue-meta插件
vue-meta 主要用于管理 HMTL 頭部標簽,同時也支持 SSR。
vue-meta有以下特點:
在頁面里面增加 metaInfo 選項
export default { data() { return { myTitle: '標題' } }, metaInfo: { title: this.title, titleTemplate: '%s - by - vue-meta', htmlAttris: { lang: 'zh' }, script: '' } ... ...}更多vue-meta使用請參考Github官網: https://github.com/declandewet/vue-meta
總結
以上所述是小編給大家介紹的Vue.js項目中管理每個頁面的頭部標簽的兩種方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答