子域加载微信头像问题

第一个是代码,第二个是log输出,第三个是报的错误
懵逼了~ 这个微信小游戏排行榜愁死我了~

另:主域相同方法加载绘制,没有问题

1赞

cocos creator的1.8.1的wx-downloader.js的文件有Bug,没有判断图片是本地地址还是远程地址,解决方法是在wx-downloader.js中,对downloadRemoteFile这个函数中的relatUrl进行判断。var relatUrl = item.url; if(relatUrl.indexOf('http') === 0) { var remoteUrl = relatUrl; } else { var remoteUrl = wxDownloader.REMOTE_SERVER_ROOT + '/' + relatUrl; }

1赞

我试过了,还是不行,我用的最新版1.9.1那个版本
另外:我主域的头像是可以显示的

createImage(sprite,url){
        let image = wx.createImage();
        image.onload = function () {
            let texture = new cc.Texture2D();
            texture.initWithElement(image);
            texture.handleLoadedTexture();
            sprite.spriteFrame = new cc.SpriteFrame(texture);
        };
        image.src = url;
    }
12赞

大神,是这个方法吗? cc.textureCache.addImage

同样遇到了这个问题,顶上去。 1.9.1-rc.1版本

主域一个项目,子域又是一个项目,引擎代码两套,直接占掉2M空间,死期不远了。

为了做个排行榜新建个子域项目值得吗?

上面有解决方案

值得,你可以把不用的库去掉,我的子域打出的包800k,主域3m

自己用JQuery实现排行榜不是更好吗,非要弄一个项目出来?

最终目的达到就好

子域用什么不是强制性的,你也 jQuery 也不是不可以的。

v1.9.1 的子域怎么使用啊?现在是子域和主域两个工程,怎么最后打包到一起提交呢?@jare

我只是觉得,本身4M就不够用了,还放两个引擎文件,非常不舒服。

是啊,所以我们把子域这块做成独立项目,这样用户才不会被绑架了。独立项目你可以用任何技术实现,不一定非是 Creator ~~

请参考 https://github.com/cocos-creator/creator-docs/blob/master/zh/publish/publish-wechatgame-sub-domain.md

能不能让子域的代码直接用主域的代码?因为至少引擎部分是一样的,没必要上两份。

这个不行的,文档上明确说明

我也碰到这个问题,子域项目获取不到头像地址。

用4楼的解决了,谢谢
createImage(sprite,url){
let image = wx.createImage();
image.onload = function () {
let texture = new cc.Texture2D();
texture.initWithElement(image);
texture.handleLoadedTexture();
sprite.spriteFrame = new cc.SpriteFrame(texture);
};
image.src = url;
},

1赞