vue 2.0 单页面应用动态修改微信中的title

下面是utils.js文件中的内容:


// 第一种修改title的方法 :
const setWechatTitle = function(title) {
    document.title = title;
    let mobile = navigator.userAgent.toLowerCase();
    if (/iphone|ipad|ipod/.test(mobile)) {
        let iframe = document.createElement('iframe');
        iframe.style.visibility = 'hidden';
        // 替换成站标favicon路径或者任意存在的较小的图片即可
        iframe.setAttribute('src', '//m.baidu.com/favicon.ico');
        let iframeCallback = function() {
            setTimeout(function() {
                iframe.removeEventListener('load', iframeCallback)
                document.body.removeChild(iframe)
            }, 10)
        };
        iframe.addEventListener('load', iframeCallback)
        document.body.appendChild(iframe)
    }
};

// 第二种修改title的方法,其中包含iframe的设置:
let setTitleHack = function (t) {
    document.title = t;
    let iframe = document.createElement('iframe');
    iframe.style.visibility = 'hidden';
    iframe.style.width = '1px';
    iframe.style.height = '1px';
    iframe.src = '//m.baidu.com/favicon.ico';
    iframe.onload = function () {
        setTimeout(function () {
            iframe.remove();
        }, 10);
    };
    document.body.appendChild(iframe);
};

// 在文件的最下方输出这两个方法:
module.exports = {
    setWechatTitle,
    setTitleHack
};

};
准备好上面的代码,接下来就看你需要在哪里使用了,如果是单页面应用的话,我们一般是在router.js文件中使用,因为路由导航发生时会执行钩子,我们可以使用 router.beforeEach 注册一个全局的 before 钩子,然后在router.beforeEach((to, from, next) => {...})修改title。
使用方式如下:

import { setTitleHack } from './utils';

vue 2.0定义路由的时候,可以将所有的路由都放在一个组件配置对象中,同时,可以配置 meta 字段,在其中添加一个title的属性,值就是你这个页面要显示页面上方的title,像下面这样:

const routes = [
    {path: '/auth', component: auth, name: 'auth', meta: {title: '�授权页'}},
    {path: '/home', component: Home, name: 'home', meta: {title: ' 首页' }},
];

二,在beforeEach中直接像下面这样写就可以了。


router.beforeEach((to, from, next) => {
    setTitleHack(to.meta.title);
    next();
});

});
三,还有一种情况就是在单个组件中使用,比如说你当前这个页面的title是根据不同用户的姓名来,而用户的姓名都是通过后台来获取的,是动态的,所以,需要在用户详情的页面中来动态修改title,使用方式其实也差不多,下面就让我们来看一下代码:
同样也是先引用,我这次把两个方法都引用进来,上面我们用的是setTitleHack,下面我们来用一下setWechatTitle:

import { setWechatTitle, setTitleHack } from './../utils';

在我现在这个项目中,取数据的过程是在beforeCreate钩子中做的,项目中获取数据用的是vue-resource,修改title就在取到了数据以后,下面来看代码:

beforeCreate(){
      let group_id = this.$route.params.id;
      let dataUrl = "group/detail?group_id=" + group_id;
      this.$http.get(dataUrl)
            .then(({data:{code, content, jssdk, msg}}) => {
                  if (code === 0) {
                        this.content = content;
                        setWechatTitle(content.header.name + '团');
                        // 取到名称之后直接修改title。
                    } else {
                        MessageBox('提示', msg);
                    }
                }, ({data:{msg}}) => {
                    MessageBox('提示', msg);
                });
        },

出处链接 https://www.jianshu.com/p/ce0e829b1bc2

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,185评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,445评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,684评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,564评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,681评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,874评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,025评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,761评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,217评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,545评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,694评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,351评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,988评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,778评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,007评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,427评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,580评论 2 349