cocos creator 1.8.0生成的h5项目,接入微信分享的时候冲突

cocos creator 1.8.0生成的h5项目,接入微信提供的js(http://res.wx.qq.com/open/js/jweixin-1.2.0.js)后报错!
因为微信提供的接口用的也是wx.开头的,引入这个后就会报下面的错
Uncaught TypeError: wx.getSystemInfoSync is not a function
at Array.183 (cocos2d-js-min.js:1)
at n (cocos2d-js-min.js:1)
at cocos2d-js-min.js:1
at Array.217…/platform/CCSys (cocos2d-js-min.js:1)
at n (cocos2d-js-min.js:1)
at cocos2d-js-min.js:1
at Array.223…/CCPath (cocos2d-js-min.js:1)
at n (cocos2d-js-min.js:1)
at cocos2d-js-min.js:1
at Array.200…/CCDirector (cocos2d-js-min.js:1)
183 @ cocos2d-js-min.js:1
n @ cocos2d-js-min.js:1
(anonymous) @ cocos2d-js-min.js:1
217…/platform/CCSys @ cocos2d-js-min.js:1
n @ cocos2d-js-min.js:1
(anonymous) @ cocos2d-js-min.js:1
223…/CCPath @ cocos2d-js-min.js:1
n @ cocos2d-js-min.js:1
(anonymous) @ cocos2d-js-min.js:1
200…/CCDirector @ cocos2d-js-min.js:1
n @ cocos2d-js-min.js:1
(anonymous) @ cocos2d-js-min.js:1
311…/CCBoot @ cocos2d-js-min.js:1
n @ cocos2d-js-min.js:1
1.cc._LogInfos @ cocos2d-js-min.js:1
(anonymous) @ cocos2d-js-min.js:1
main.js:191 Uncaught TypeError: Cannot read property ‘run’ of undefined
at boot (main.js:191)
at HTMLScriptElement.engineLoaded (main.js:216)

嗯。这是因为目前使用了 window[‘wx’]来判断是不是小游戏环境导致的。 引入 wx会误认为你是在小游戏平台。 据说要等1.8.1

1赞

是的, 团队写这段代码的时候不知道怎么想的,自己改源码的,
main.js 中修改 为

var isWeChatGame = (window["wx"] && window["wx"].getSystemInfoSync);

cocos2d-js 中修改为

 function isWeChatGame() {
          return (window["wx"] && window["wx"].getSystemInfoSync);
        }
3赞

1.8.1 会修复,或者先用回 1.7.2 吧。

很不幸,我172也遇到这个问题了。

1.8.1 正式版已经发布啦