javascript - vue 動態(tài)改微信分享文案的問題
問題描述
現(xiàn)在是這樣的 有一個需求 當我在首頁分享的時候標題 是 aaaa 當我在詳情頁分享的時候標題是 bbb 但是頁面一加載 文案就定死了 我如何動態(tài)改分享的文案 我使用的是vue2 代碼如下
我寫在main.js中 一開始執(zhí)行就加載了 一開始定義了 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, // 我需要動態(tài)改這個標題 desc: desc, // 動態(tài)改這個描述 link: ’’, // 分享鏈接 默認以當前鏈接 imgUrl: imgUrl + ’/static/images/share.png’,// 分享圖標 // 用戶確認分享后執(zhí)行的回調函數(shù) success: function () { }); } },
問題解答
回答1:你的微信分享功能的初始化應該是在全局做的。我覺得可以將wx分享封裝成一個函數(shù),然后將需要修改的參數(shù)暴露成接口,你這里的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. 查詢mysql數(shù)據(jù)庫中指定表指定日期的數(shù)據(jù)?有詳細2. mysql - 怎么生成這個sql表?3. mysql儲存json錯誤4. php - 公眾號文章底部的小程序二維碼如何統(tǒng)計?5. mysql - 表名稱前綴到底有啥用?6. mysql - 數(shù)據(jù)庫表中,兩個表互為外鍵參考如何解決7. Navicat for mysql 中以json格式儲存的數(shù)據(jù)存在大量反斜杠,如何去除?8. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語法實現(xiàn)存在即更新應該使用哪個標簽?9. mysql - 數(shù)據(jù)庫建字段,默認值空和empty string有什么區(qū)別 11010. sql語句 - 如何在mysql中批量添加用戶?
