37 lines
1.0 KiB
Markdown
37 lines
1.0 KiB
Markdown
打开资源配置文件 resource.json ,你可以看到里面的资源文件都有一个 type 类型,
|
||
|
||
~~~
|
||
{
|
||
"name":"mc_png",
|
||
"type":"image",
|
||
"url":"assets/mc.png"
|
||
},
|
||
{
|
||
"name":"big_json",
|
||
"type":"json",
|
||
"url":"assets/big.json"
|
||
}
|
||
~~~
|
||
我们可以根据 type 类型自定义它的解析器。 使用下面这个方法
|
||
|
||
~~~
|
||
RES.registerAnalyzer(type:string, analyzerClass:any)
|
||
~~~
|
||
|
||
比如我们要解析一个自定义的 type 为 demo 类型的文件,解析类是一个你自己写的 DemoAnalyzer 类,那么我们只需要像下面这么写就这可以了。
|
||
|
||
~~~
|
||
RES.registerAnalyzer("demo", DemoAnalyzer);
|
||
~~~
|
||
|
||
~~~
|
||
2.4之前的版本中对应的方法为:
|
||
egret.Injector.mapClass(RES.AnalyzerBase, DemoAnalyzer, "demo")
|
||
~~~
|
||
|
||
当RES加载完文件后,发现它的类型是 demo,就会调用你的 DemoAnalyzer 方法来解析它。
|
||
|
||
注意,这种方式会替换掉默认的内置解析器,所以如果没有特殊需求,尽量不要替换默认的类型。
|
||
|
||
默认的内置解析类型可以在 RES.ResourceItem 中找到。
|