javascript - vue 动态改微信分享文案的问题
问题描述
现在是这样的 有一个需求 当我在首页分享的时候标题 是 aaaa 当我在详情页分享的时候标题是 bbb 但是页面一加载 文案就定死了 我如何动态改分享的文案 我使用的是vue2 代码如下
我写在main.js中 一开始执行就加载了 一开始定义了 var title = ’aaaa’ desc = ’bbbb’我的做法是 在路由跳转到详情页的时候 title 改变
router.beforeEach(function (to, from, next) { if (to.path.indexOf(’/details’) != -1) { // 当跳转到这个页面时候改变title title = ’cccc’; desc = ’dddd’ } else { title = ’aaaa’; desc = ’bbbb’; }}
但是这样做不行 不知道为什么 从一开始加载 title就永远是 aaa了 除非我在详情页刷新 此时才会重新new vue的实例 才会改变title
分享代码如下:
wx.onMenuShareAppMessage({ // 分享给朋友 title: title, // 我需要动态改这个标题 desc: desc, // 动态改这个描述 link: ’’, // 分享链接 默认以当前链接 imgUrl: imgUrl + ’/static/images/share.png’,// 分享图标 // 用户确认分享后执行的回调函数 success: function () { }); } },
问题解答
回答1:你的微信分享功能的初始化应该是在全局做的。我觉得可以将wx分享封装成一个函数,然后将需要修改的参数暴露成接口,你这里的title。然后在不同的路由(组件)中去完成注册以及配置。
回答2:setPageTitle:function(video){ document.querySelector(’head title’).innerText = video.title; // hack微信等webview中无法修改标题 var iframe = document.createElement(’iframe’); iframe.addEventListener(’load’, function () {setTimeout(function(){document.body.removeChild(iframe)},0) ; }); document.body.appendChild(iframe); // 标题(内容) document.querySelector(’.video_title’).innerText = video.title;},回答3:
推荐一款修改title的组件
相关文章:
1. mac连接阿里云docker集群,已经卡了2天了,求问?2. Ant design vue中的联动选择取消操作3. java - 需要一个加密,验证算法4. javascript - 图片链接请求一直是pending状态,导致页面崩溃,怎么解决?5. javascript - nodejs关于进程间发送句柄的一点疑问6. css - 移动端 盒子内加overflow-y:scroll后 字体会变大7. html5 - 关于电脑手机ip地址的问题8. java - 急等。vs写一个简单程序关闭黑窗老是响应很久,然后报错,无法再次运行9. 浅谈Vue static 静态资源路径 和 style问题10. python爬虫 - mongodb 存入了pymongo传入的多个数据之后怎么提取有用的数据
