浏览器调试模式下使用Resources.load无法加载bin文件

  • Creator 版本:3.7.2

  • 目标平台: chrome和qq浏览器均出现

  • 重现方式:

loadBinary(path:string){

    return new Promise<ArrayBuffer>((resolve,reject)=>{

        resources.load

        // loader.loadRes

        (path,ArrayBuffer,(err,asset)=>{

            if(err){

                reject(err)

              }else{


                resolve(str2ArrayBuffer(asset.buffer()))

              }

             

        })

    })

目前使用没有使用bin后缀文件加载。直接使用asset格式加载。再把string转成bufferarray。


参数改下就好了吧,ArrayBuffer -> BufferAsset

非常感谢你的热心回复。:sweat_smile:不要意思,贴代码的时候贴错了,这是我的问题,给你造成了误导,我用的确实是bufferAsset,如果用的是arraybuffer,是不会识别出bin文件的。刚刚我又重新试了下,确实没办法加载bin文件。 :smirk:

loadBinary(path:string){

return new Promise<Uint8Array>((resolve,reject)=>{

    resources.load

    // loader.loadRes

    // (path,Asset,(err,asset)=>{

(path,BufferAsset,(err,asset)=>{

        if(err){

            reject(err)

          }else{

            // console .log(str2ArrayBuffer(asset._nativeAsset))

            resolve(new Uint8Array(asset.buffer()))

            // resolve(str2Uint8Array(asset._nativeAsset))

          }

    })

})

}

主要的问题是要触发下载。但是并没有妨碍到开发。