cc.loader.loadRes 预加载完 调用cc.loader.getRes 返回null了
从远程服务器加载图集资源(plist),怎样得到里面的一张张图片
// 加载 SpriteAtlas(图集),并且获取其中的一个 SpriteFrame
// 注意 atlas 资源文件(plist)通常会和一个同名的图片文件(png)放在一个目录下, 所以需要在第二个参数指定资源类型
cc.loader.loadRes(“test assets/sheep”, cc.SpriteAtlas, function (err, atlas) {
var frame = atlas.getSpriteFrame(‘sheep_down_0’);
sprite.spriteFrame = frame;
});
…
这是本地获取,我说的是从远程服务器网络加载获取,谢谢
就我所知,这必须要利用动态热更新方式下载assest然后在本地做挂载动作…
后期我也需要这个功能,这就尴尬了
看了一下 1.4.2 没有来得及合并进去,目前建议的解决方案是给 loader polyfill 上正确的实现:
cc.loader.getRes = function (url, type) {
var item = this._cache[url];
if (!item && url) {
var uuid = this._getResUuid(url, type, true);
if (uuid) {
var ref = this._getReferenceKey(uuid);
item = this._cache[ref];
}
else {
return null;
}
}
if (item && item.alias) {
item = this._cache[item.alias];
}
return (item && item.complete) ? item.content : null;
}
保证这段代码在你执行 getRes 之前被执行即可
1.4.3 什么时候发布呢。会进行merge吗