传统的设置title的方法是:document.title = ‘title’
但是这种写法在iOS的微信上是不兼容的
这里设置title的方法是通过 避免了安卓和iOS的不兼容写法
export function setDocTitle(title) {
var u = navigator.userAgent
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1
var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)
if (isAndroid) {
document.title = title
} else if (isiOS) {
document.title = title
const hackIframe = document.createElement('iframe');
hackIframe.style.display = 'none';
hackIframe.src = '/static/html/fixIosTitle.html?r=' + Math.random();
document.body.appendChild(hackIframe);
setTimeout(_ => {
document.body.removeChild(hackIframe)
}, 300)
}
}
全局maIn.js中添加
引入
import {setDocTitle} from '@/utils/index'
全局注入
Vue.prototype.setDocTitle = setDocTitle
其它 页面使用
this.setDocTitle(title)