当前位置: 移动技术网 > IT编程>脚本编程>vue.js > Vue 应用中结合vux使用微信 jssdk的方法

Vue 应用中结合vux使用微信 jssdk的方法

2018年09月23日  | 移动技术网IT编程  | 我要评论

己组词,根甜菜,双色球2013016

vux微信分享说明

分享接口只有认证公众号才能使用,域名必须备案且在微信后台设置。

先确认已经满足使用jssdk的要求再进行开发。

引入

在 main.js 中全局引入:

import { wechatplugin } from 'vux'
vue.use(wechatplugin)

console.log(vue.wechat) // 可以直接访问 wx 对象。

组件外使用

考虑到你需要在引入插件后调用config方法进行配置,你可以通过 vue.wechat 在组件外部访问wx对象。

jssdk需要请求签名配置接口,你可以直接使用 vux 基于 axios 封装的 ajaxplugin

import { wechatplugin, ajaxplugin } from 'vux'
vue.use(wechatplugin)
vue.use(ajaxplugin)

vue.http.get('/api', ({data}) => {
 vue.wechat.config(data.data)
})

组件中使用

那么之后任何组件中都可以通过 this.$wechat 访问到 wx 对象。

export default {
 created () {
 this.$wechat.onmenusharetimeline({
  title: 'hello vux'
 })
 }
}

我所使用的是组件外定义,组件内调用

引入对应的文件

import vue from 'vue'
import { wechatplugin } from 'vux'
vue.use(wechatplugin)//使用微信插件
//微信分享
const wxshare = (obj,callback)=>{
 // console.log(obj,callback);
 function geturl(){
  var url = window.location.href;
  var locationurl = url.split('#')[0];
  //console.log(locationurl);

  return locationurl;
 }
 if(obj){
  var title = obj.title==undefined||obj.title==null?'泉水系统':obj.title;
  var link = obj.link==undefined||obj.link==null?window.location.href:obj.link;
  var desc = obj.desc==undefined||obj.desc==null?'泉水系统':obj.desc;
  var imgurl = obj.imgurl==undefined||obj.imgurl==null?'src/img/share.png':obj.imgurl;
  var debug = obj.debug==true?true:false;
 }else{
  alert('请传分享参数');
 }
 //微信分享
 vue.http.get("http://获取wx_token地址").then(response => response.json()).then(data => {
  // console.log('微信微信',data)
  var wxdata = data;
  wxdata.debug = debug;
  wxdata.jsapilist= [
   // 所有要调用的 api 都要加到这个列表中
   'onmenusharetimeline',//分享到朋友圈
   'onmenushareappmessage',//分享给朋友
   'onmenushareqq',//分享到qq
   'onmenushareqzone',//分享到qq空间
   'onmenushareweibo'//分享到腾讯微博
  ];
  vue.wechat.config(wxdata);


  vue.wechat.ready(function () {
   //分享到朋友圈
   vue.wechat.onmenusharetimeline({
    title:title, // 分享标题
    link: link, // 分享链接
    desc: desc, // 分享描述
    imgurl:imgurl, // 分享图标
    success: function () {
     callback && callback();
     // 用户确认分享后执行的回调函数
    },
    cancel: function () {
     // 用户取消分享后执行的回调函数
    }
   });
   //分享到朋友
   vue.wechat.onmenushareappmessage({
    title: title, // 分享标题
    desc: desc, // 分享描述
    link: link, // 分享链接
    imgurl: imgurl, // 分享图标
    type: '', // 分享类型,music、video或link,不填默认为link
    dataurl: '', // 如果type是music或video,则要提供数据链接,默认为空
    success: function () {
     // 用户确认分享后执行的回调函数
     callback && callback();
    },
    cancel: function () {
     // 用户取消分享后执行的回调函数
    }
   });
   //分享到qq
   vue.wechat.onmenushareqq({
    title: title, // 分享标题
    desc: desc, // 分享描述
    link: link, // 分享链接
    imgurl: imgurl, // 分享图标
    success: function () {
     // 用户确认分享后执行的回调函数
     callback && callback();
    },
    cancel: function () {
     // 用户取消分享后执行的回调函数
    }
   });

   //分享到qq空间
   vue.wechat.onmenushareqzone({
    title: title, // 分享标题
    desc: desc, // 分享描述
    link: link, // 分享链接
    imgurl: imgurl, // 分享图标
    success: function () {
     // 用户确认分享后执行的回调函数
     callback && callback();
    },
    cancel: function () {
     // 用户取消分享后执行的回调函数
    }
   });

   //分享到腾讯微博
   vue.wechat.onmenushareweibo({
    title: title, // 分享标题
    desc: desc, // 分享描述
    link: link, // 分享链接
    imgurl: imgurl, // 分享图标
    success: function () {
     // 用户确认分享后执行的回调函数
     callback && callback();
    },
    cancel: function () {
     // 用户取消分享后执行的回调函数
    }
   });
  })
 })
}

输出

export {wxshare}

组件内调用

import { wxshare } from '封装wxshare函数的js路径'
 export default {
  name:'home',
  data() { //选项 / 数import { viewbox } from 'vux'
 export default {
  name:'home',
  data() { //选项 / 数据
   return {

   }
  },
  methods: { //事件处理器

  },
  components: { //定义组件

  },
  created() { //生命周期函数
   wxshare({
    title: '分享标题', // 分享标题
    desc: '分享描述', // 分享描述
    link: window.location.href, // 分享链接
    imgurl: 'http://图片地址share.png', // 分享图标
   // debug:true
   },function(){//分享成功后的回调函数

   });
  }

 }

以上这篇vue 应用中结合vux使用微信 jssdk的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网