我爱编程

anglarjs微信js-sdk分享和地理js代码

2018-06-27  本文已影响0人  四脚蛇

用的微信接口版本是jweixin-1.0.0.js

具体参照:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115

'use strict';

angular.module('zhaohuaApp').factory('WXService', function($http, $location) {

var WXService = {};

//初始化调一次

var wxSgin=sign([

        'onMenuShareTimeline',

        'onMenuShareAppMessage',

        'onMenuShareQQ',

        'onMenuShareWeibo',

        'onMenuShareQZone',

        'openLocation'

]);

WXService.share = function(title, desc, img, link){

if(isWeiXin()){

wx.ready(function(){

link = link.replace(/#!/g,'?!') + ((link.indexOf('?') != -1) ? '' : '?');

var shareData = {

title: title,

desc: desc,

link: link,

imgUrl: img

}

wx.onMenuShareTimeline(shareData);

wx.onMenuShareAppMessage(shareData);

wx.onMenuShareQQ(shareData);

wx.onMenuShareWeibo(shareData);

wx.onMenuShareQZone(shareData);

});

}

}

WXService.map = function(longitude, latitude, name, address){

if(isWeiXin()){

wx.ready(function(){

wx.openLocation({

longitude: longitude, // 经度,浮点数,范围为180 ~ -180。

latitude: latitude, // 纬度,浮点数,范围为90 ~ -90

name: name, // 位置名

address: address, // 地址详情说明

scale: 15 // 地图缩放级别,整形值,范围从1~28。默认为最大

});

});

}

}

// ---------------------------------- 微信服务公共方法 Start----------------------------------

function sign(apiList){

if(!isWeiXin()){

return;

}

var absUrl = $location.absUrl();

var prefix = (absUrl.indexOf('/#!/') != -1) ? '.' : '..';

$http.post(prefix + '/wxAuthorize/jsApiSign', angular.toJson(absUrl)).then(function(res){

if(res.data.errorType == 'success'){

var data = res.data.returnData;

wx.config({

    debug: false,

    appId: data.appId,

    timestamp: data.timestamp,

    nonceStr: data.noncestr,

    signature: data.signature,

    jsApiList: apiList

});

}

});

}

function isWeiXin(){

    var ua = navigator.userAgent.toLowerCase();

    return ua.match(/MicroMessenger/i) == 'micromessenger';

};

// ---------------------------------- 微信服务公共方法 End----------------------------------

return WXService;

});

上一篇下一篇

猜你喜欢

热点阅读