luaEnv.AddLoader((ref string path) =>{
// require("module.script")
string[] args = path.Split('.');
if (args.Length != 2) return null;
//在这里使用同步的方式,从AB资源中加载lua脚本
return YourAssetBundleLoader.LoadLuaScriptBytes(args[0], args[1]);
});
上述代码如何声明自定义的require路径,示例中,我们使用的方式是以 ‘.’的方式分割模块和脚本
当你在lua代码中使用require命令时,xlua会依次执行所有加载路径直到返回数据或者没有可用加载路径时结束
我们通过xlua虚拟机的AddLoader 函数去注入require路径的解析
当我们接收到正确的解析参数后,要返回bytes类型的数据。