自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JS微信分享不好寫(xiě)?來(lái)封裝一下

開(kāi)發(fā) 前端
微信開(kāi)發(fā)這塊,作為開(kāi)發(fā)工程師來(lái)說(shuō),一般是避免不了的,也好像發(fā)現(xiàn)一些朋友寫(xiě)微信分享都是在每個(gè)頁(yè)面一大把一大把的代碼。

微信開(kāi)發(fā)這塊,作為開(kāi)發(fā)工程師來(lái)說(shuō),一般是避免不了的,也好像發(fā)現(xiàn)一些朋友寫(xiě)微信分享都是在每個(gè)頁(yè)面一大把一大把的代碼。

代碼冗余,即便是復(fù)制過(guò)來(lái)再改也很麻煩。

之前自己封裝了一下js,今天來(lái)分享一下,希望能給看到的園友帶來(lái)一點(diǎn)思路,當(dāng)然希望能幫忙一起改進(jìn)。

我的思路:

  1.可以分享到四個(gè)地方QQ,朋友,朋友圈,微博,一般情況下他們是一致的,可以配置一個(gè)初始參數(shù),賦值給它們四個(gè)

  2.如果出現(xiàn)不一致,因?yàn)榍懊嬉呀?jīng)賦值了初始參數(shù),這時(shí)再把需要不一致的內(nèi)容替換掉

實(shí)現(xiàn)主要代碼:

 

 

  1. setData: function(){ 
  2.         var self = this
  3.         self.data = { 
  4.             title: self.title, 
  5.             desc: self.desc, 
  6.             link: self.link, 
  7.             imgUrl: self.imgUrl, 
  8.             type: self.type, // 分享類(lèi)型,music、video或link,不填默認(rèn)為link 
  9.             dataUrl: self.dataUrl, // 如果type是music或video,則要提供數(shù)據(jù)鏈接,默認(rèn)為空 
  10.             success: self.success, 
  11.             cancel: self.cancel 
  12.         }; 
  13.         //深度克隆 
  14.         self.QQData = JSON.stringify(self.data); 
  15.         self.QQData = JSON.parse(self.QQData); 
  16.         self.TimeLineData = JSON.stringify(self.data); 
  17.         self.TimeLineData = JSON.parse(self.TimeLineData);   
  18.         self.WeiBoData = JSON.stringify(self.data); 
  19.         self.WeiBoData = JSON.parse(self.WeiBoData);    
  20.  
  21.       //反序列化 
  22.               self.QQData.success = self.success; 
  23.                self.TimeLineData.success = self.success; 
  24.           self.WeiBoData.success = self.success; 
  25.           self.QQData.cancel = self.cancel; 
  26.           self.TimeLineData.cancel = self.cancel; 
  27.           self.WeiBoData.cancel = self.cancel; 
  28.     } 
  29.  
  30.  
  31. wx.ready(function(){ 
  32.                   wx.showOptionMenu(); 
  33.                   if(self.data == '') self.setData(); 
  34.                   wx.onMenuShareQQ(self.QQData); 
  35.                   wx.onMenuShareAppMessage(self.data); 
  36.                   wx.onMenuShareTimeline(self.TimeLineData); 
  37.                   wx.onMenuShareWeibo(self.WeiBoData); 
  38.             }); 

 使用幫助:

 

 

 

var wxshare = require('wxshare.js');

 

如果分享的內(nèi)容都一致

 

wxshare.link = ''; wxshare.desc = ''; wxshare.imgUrl = ''; wxshare.type = ''; wxshare.dataUrl = ''; wxshare.start();

 

如果有不一致,針對(duì)不一致的地方進(jìn)行修改 

  1. wxshare.link = ''
  2. wxshare.title = ''
  3. wxshare.desc = ''
  4. wxshare.imgUrl = ''
  5. wxshare.setData();//必須加上 
  6. wxshare.TimeLineData.title = '';  
  7. wxshare.QQData.desc = ''
  8. wxshare.start(); 

 

重點(diǎn)說(shuō)明: setData()

如果全部的分享內(nèi)容都一樣,直接執(zhí)行start(), 判斷data參數(shù)空為true,會(huì)執(zhí)行setData(),
為四個(gè)分享賦值:QQData data TimeLineData WeiboData, 而后初始化

如果有不一致,***賦值后,直接調(diào)用setData(),為四個(gè)參數(shù)賦值,之后再根據(jù)需求修改不同的對(duì)應(yīng)參數(shù),***start()初始化。

 
責(zé)任編輯:王雪燕 來(lái)源: 博客園
相關(guān)推薦

2013-08-19 15:00:53

微信易信

2024-03-01 18:55:54

內(nèi)存調(diào)試Go 語(yǔ)言

2013-10-10 14:15:22

微信開(kāi)發(fā)

2020-10-15 11:18:13

Linux內(nèi)核虛擬機(jī)

2023-05-03 09:09:28

Golang數(shù)組

2019-03-06 10:20:24

微信騰訊流量

2015-07-28 14:32:41

創(chuàng)業(yè)工作和家庭

2021-08-07 07:56:59

Node邏輯對(duì)象

2017-09-25 09:17:52

美工程序員互聯(lián)網(wǎng)

2020-07-29 10:20:28

Redis數(shù)據(jù)庫(kù)字符串

2018-01-02 16:48:58

Python 微信安卓

2021-12-27 08:31:42

Next.js SSRSSG

2023-09-06 08:57:33

NLTK自然語(yǔ)言處理工具

2020-05-19 13:34:20

ZookeeperZAB協(xié)議

2013-03-21 09:54:51

微信開(kāi)發(fā)者案例

2015-02-12 16:57:35

微信SDK

2021-04-21 14:19:52

javaignalHandle接口

2016-10-20 14:04:09

2013-08-08 10:13:25

微信

2021-03-15 06:24:22

Nacos集群搭建微服務(wù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)