关于动态加载音乐播放的方式

Since 1.10, cc.audioEngine accept cc.AudioClip instance directly, not a URL string. Please directly reference the AudioClip object in your script, or load cc.AudioClip by loader first. Don’t use audio’s URL anymore. 如果我想播放动态加载的音乐该怎么样写呀,之前的写法( var audioID = cc.audioEngine.play(cc.url.raw(path), false, 1);)报这个警告

文档推荐:AudioEngine 播放的时候,需要注意这里传入的是一个完整的 AudioClip 对象(而不是 url)。所以不建议在 play 接口内直接填写音频的 url 地址,而是希望用户在脚本的 properties 中先定义一个 AudioClip,然后在编辑器的 属性检查器 中添加对应的用户脚本组件,将音频资源拖拽到脚本组件的 audio-clip 上。

如果我是 放到resources 目录下的音乐该如何播放呢

https://docs.cocos.com/creator/manual/zh/asset-workflow/audio-asset.html?h=cc.load

通过cc.loader.loadResDir,把把目录下所有的音频加载进来,通过音频文件的名称播放
var _this = this; cc.loader.loadResDir('music/', function (count, totalCount, res) { }, function (err, res) { if (err == null) { _this._MusicDict = {}; res.forEach(clip => { _this._MusicDict[clip.name] = clip; }); } else { console.error(err); } })