[page:Loader] →

# [name]

用来加载一个[page:Image]的加载器。 内部使用[page:FileLoader]来加载文件，并被 [page:CubeTextureLoader]、[page:ObjectLoader]、[page:TextureLoader]所使用。

## 例子

[example:webgl_loader_obj WebGL / loader / obj]
[example:webgl_shaders_ocean WebGL / shaders / ocean]

`// 初始化一个加载器 var loader = new THREE.ImageLoader(); // 加载一个图片资源 loader.load( // 资源URL 'textures/skyboxsun25degtest.png', // onLoad回调 function ( image ) { // use the image, e.g. draw part of it on a canvas var canvas = document.createElement( 'canvas' ); var context = canvas.getContext( '2d' ); context.drawImage( image, 100, 100 ); }, // 目前暂不支持onProgress的回调 undefined, // onError回调 function () { console.error( 'An error happened.' ); } );`

请注意three.js r84遗弃了ImageLoader进度事件. 对于支持进度事件的ImageLoader 请参考[link:https://github.com/mrdoob/three.js/issues/10439#issuecomment-275785639 this thread].

## 构造方法

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

[page:LoadingManager manager] — 加载器使用的[page:LoadingManager loadingManager]，默认为[page:LoadingManager THREE.DefaultLoadingManager].
创建一个新的[name].

## 属性

共有属性请参见其基类[page:Loader]。

## 方法

共有方法请参见其基类[page:Loader]。

### [method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )

[page:String url] — 文件的URL或者路径，也可以为 [link:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs Data URI].
[page:Function onLoad] —加载完成时将调用。回调参数为将要加载的[page:Image image]。
[page:Function onProgress] — 此回调函数暂时不支持。
[page:Function onError] — 在加载错误时被调用。

从URL中进行加载，并返回将包含数据的[page:Image image]对象。

## 源

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