# 加载器（[name]）

用于实现加载器的基类。

## 构造函数

### [name]( [param:LoadingManager manager] )

[page:LoadingManager manager] — 加载器将要使用的 [page:LoadingManager loadingManager]。默认为 [page:LoadingManager THREE.DefaultLoadingManager]。

创建一个新的[name]。

## 属性

### [property:String crossOrigin]

crossOrigin 字符串用于实现 CORS ，以从允许 CORS 的其他域加载url。 默认为*anonymous*。

### [property:LoadingManager manager]

加载器要使用的 [page:LoadingManager loadingManager] 。默认为 [page:DefaultLoadingManager] 。

### [property:String path]

将从中加载资产的基本路径。 默认为空字符串。

### [property:String resourcePath]

将从中加载额外资源（例如纹理贴图）的基本路径。 默认为空字符串。

### [property:Object requestHeader]

[link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header request header] 在 HTTP 请求中使用。 请参考 [page:.setRequestHeader]。 默认为 *undefined*。

## 方法

### [method:undefined load]()

该方法需要被所有具体的加载器来实现。它包含了从后端加载资产的逻辑。

### [method:Promise loadAsync]( [param:String url], [param:Function onProgress] )

[page:String url] — 一个字符串，包含要加载的文件的路径/URL。
[page:Function onProgress] — （可选）加载过程中将会被调用的函数。参数将是一个XMLHttpRequest实例，其包含了 .[page:Integer total] （总）字节数和 .[page:Integer loaded] （已加载）字节数。

该函数等效于[page:.load]，但返回的是一个 [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise Promise]。

[page:Function onLoad] 由 [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/resolve Promise.resolve] 处理，而 [page:Function onError] 则由 [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/reject Promise.reject] 处理。

### [method:undefined parse]()

该方法需要被所有具体的加载器来实现。它包含了解析资产到 three.js 实体的逻辑。

### [method:this setCrossOrigin]( [param:String crossOrigin] )

[page:String crossOrigin] — crossOrigin字符串用于实现CORS，以从允许CORS的其它域加载url。

### [method:this setPath]( [param:String path] )

[page:String path] — 设置资产的基本路径。

### [method:this setResourcePath]( [param:String resourcePath] )

[page:String resourcePath] — 设置独立资源（如纹理贴图）的基本路径。

### [method:this setRequestHeader]( [param:Object requestHeader] )

[page:Object requestHeader] - key: 要设置header的名称。 value：要设置header的值。
设置在 HTTP 请求中使用的 [link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header request header]（请求头）。

## 源码

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]