Giter VIP home page Giter VIP logo

weixin-js-sdk's Introduction

微信官方 js-sdk

说明: 仅将官方 js-sdk 发布到 npm,支持 CommonJS,便于 browserify, webpack 等直接使用,支持 TypeScript。

官方 JS 源码: https://res.wx.qq.com/open/js/jweixin-1.6.0.js

官方使用说明: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html

安装:

npm install weixin-js-sdk

使用:

// commonjs
var wx = require('weixin-js-sdk');

// es module
import wx from 'weixin-js-sdk'

Old versions

个人主页

感谢

TypeScript 定义文件来自 wx-jssdk-ts

weixin-js-sdk's People

Contributors

hadichen avatar lamprose avatar lazyneo avatar liupl avatar vanbolee avatar woshiydh08 avatar yanxi123-com avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

weixin-js-sdk's Issues

重复引入 weixin-js-sdk 时,返回结果为空

由于代码里会判断 window.jWeixin
如果其他包里引用了 其他版本的 weixin-js-sdk ,再次引用时 window.jWeixin 已经存在
导致代码逻辑不正确

myproject
--node_modules
---- [email protected]     // 我自己安装的 sdk
---- ohter
[email protected]   // 第三方包引入的 sdk

应该添加一行代码

if(!window.jWeixin) {...} 
return window.jWeixin

我目前的处理方法是

const wx = window.jWeixin || require('weixin-js-sdk')

nodes v7.10.0下问题

node_modules/weixin-js-sdk/index.js (1:108) The 'this' keyword is equivalent to 'undefined' at the top level of an ES module, and has been rewritten
(node:12540) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: 'default' is not exported by node_modules/weixin-js-sdk/index.js
(node:12540) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

调用微信扫一扫功能的时候还没扫描二维码,就自动执行了扫描的回调了

` sendArticle(){
this.isShowQRCode = true;

      wx.ready(function () {
        wx.checkJsApi({
          jsApiList : ['scanQRCode'],
          success : function(res) {
          }
        });
        wx.scanQRCode({
          needResult: 1, // 默认为0,扫描结果由微信处理,1则直接返回扫描结果,
          scanType: ["qrCode"], // 可以指定扫二维码还是一维码,默认二者都有
          success: function (res) {
            var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果
            console.log("result:aaaaaaa",result);
            //                    window.location.href = result;//因为我这边是扫描后有个链接,然后跳转到该页面
          }
        });
      });

    },`

这个方法是点击一个按钮,然后扫描二维码,可是还没有扫描二维码,wx.scanQRCode的success就自动执行了

用babel转换之后,export导出为空,

image

var wx = require('weixin-js-sdk');
console.log(wx);   // {__esModule: true}

使用babel-loader转换后,export导出的对象是空的;

image

而且用es6的import引入包时,会报warning,

image

这个是什么问题呢?

微信分享的success或trigger没执行

想要监听用户点击分享按钮,但success和trigger都没有执行
版本1.4.0-test

let wxConfig = {
      title: shareOpt.articleTitle,
      desc: shareOpt.articleDiscription,
      imgUrl: shareOpt.headImageUrl,
      link: shareOpt.requestUrl,
      success: function () {
        console.log('分享成功')
      },
      trigger:function(){
        console.log('分享成功')
      }
    }
    wxSdk.error(function (res) {
      // 验证发生错误了
      console.error(res)
    })
    wxSdk.ready(function () {
      wxSdk.updateAppMessageShareData(wxConfig)
      wxSdk.updateTimelineShareData(wxConfig)
    })

安卓分享到微信和朋友圈失败

js-sdk:1.4.0-test
微信:6.7.3

描述: 在ios上,分享功能正常,在安卓上,分享到QQ和空间正常,分享到微信朋友和朋友圈失败(无法显示自定义参数)

我的代码:

wx.ready(() => {
          // 自定义“分享给朋友”及“分享到QQ”按钮的分享内容
          wx.updateAppMessageShareData({
            title: '111', // 分享标题
            desc: '222', // 分享描述
            link: '333', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
            imgUrl: '444', // 分享图标
            success () {
              // 设置成功
              console.log('success')
            }
          });
          // 自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容
          wx.updateTimelineShareData({
            title: '111', // 分享标题
            link: '222', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
            imgUrl: '333', // 分享图标
            success () {
              // 设置成功
            }
          });
        });

请求升级

现在官方出的1.4.0了...

"请注意,原有的 wx.onMenuShareTimeline、wx.onMenuShareAppMessage、wx.onMenuShareQQ、wx.onMenuShareQZone 接口,即将废弃。请尽快迁移使用客户端6.7.2及JSSDK 1.4.0以上版本支持的 wx.updateAppMessageShareData、updateTimelineShareData 接口。"

api-微信支付支持缺陷

api-微信支付,填坑:传参得传timestamp(s小写,微信文档上是timeStamp),appId缺失,导致出现"支付验证签名失败"

launch_3rdApp:fail_invalid signature

WeixinJSBridge.invoke('launch3rdApp', {
'appid': 'xxxxxxx',
'messageExt': 'from=weixin_webview',
'extInfo': 'from=weixin_webview'
}, function(e) {
alert("error" + JSON.stringify(e));
});

launch_3rdApp:fail_invalid signature

help me

安装成功后引用wx,打印的值为undefined

根据官方提供安装npm install weixin-js-sdk,之后引用import wx from "weixin-js-sdk",提示无法找到模块“weixin-js-sdk”的声明文件。“C:/Users/lenovo/Desktop/qiaohan-billboard/minip-wx/node_modules/weixin-js-sdk/index.js”隐式拥有 "any" 类型。
尝试使用 npm i --save-dev @types/weixin-js-sdk (如果存在),或者添加一个包含 declare module 'weixin-js-sdk'; 的新声明(.d.ts)文件,但是在此之前,确实是好使的,并没有做任何的更改

chooseImage唤起相册很慢

使用1.4sdk 调用chooseImage时在小米mix3,荣耀9等机型上从触发事件到显示相册需要等待5秒以上,换回1.2版本就基本秒开了。

用的是1.40-test,IOS端getLocalImgData失败

用的是1.40-test,IOS端getLocalImgData失败,返回getLocalImgData:fail。已经通过chooseImage拿到本地localId,当调用getLocalImgData转为Base64时候,没走成功回调,走的失败回调

关于公众号h5分享功能的一些疑问

您好,我看官方文档中标注'onMenuShareAppMessage','onMenuShareTimeline',这两个API即将废弃,有确定是什么版本废弃吗?以及这两个废弃之后该如何获取用户是否成功分享?

麻烦请升级1.4版本,为了分享...老接口将被废弃

请注意,原有的 wx.onMenuShareTimeline、wx.onMenuShareAppMessage、wx.onMenuShareQQ、wx.onMenuShareQZone 接口,即将废弃。请尽快迁移使用客户端6.7.2及JSSDK 1.4.0以上版本支持的 wx.updateAppMessageShareData、updateTimelineShareData 接口

安卓使用onPageStateChange,监听页面变化,不生效,ios可以

WeixinJSBridge.on('onPageStateChange', function(res) {
// 注意:res.active返回的是字符串类型的true和false
if (res && res.active) {
// do something
console.log('onready')
}
})

<wx-open-launch-weapp
class="now-btn"
id="launch-btn"
username="gh_a974b946349a"
:path="weChatPath"
@ready='onReady'
@launch="onLaunch"
@error="onError"
>
<script type="text/wxtag-template">
<style>.btn { color: #fff; font-size: 17px; height: 55px; line-height: 55px; text-align: center }</style>

下一步

</script>

公众号上打开小程序后,退出小程序回到公众号,调用页面变化的微信sdk方法,ios可以成功,安卓不行为什么?着急

能否支持人脸核身?

requestWxFacePictureVerify
requestWxFacePictureVerifyUnionVideo
尝试添加了这两个接口,其他的接口没有问题,唯独这两个的config一直无法正确配置进去,不知道能否提供调用方式或者示例?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.