new Tiny.loaders.Loader(baseUrl, concurrency)
| Name | Type | Default | Description |
|---|---|---|---|
baseUrl |
string | '' |
optional
The base url for all resources loaded by this loader. |
concurrency |
number | 10 |
optional
The number of resources to load concurrently. |
Extends
Members
-
baseUrlstring
-
The base url for all resources loaded by this loader.
-
concurrencynumber
-
The number of resources to load concurrently.
- Default Value:
- 10
-
defaultQueryStringstring
-
A querystring to append to every URL added to the loader.
This should be a valid query string without the question-mark (
?). The loader will also not escape values for you. Make sure to escape your parameters withencodeURIComponentbefore assigning this property.Example
const loader = new Tiny.ResourceLoader(); loader.defaultQueryString = 'user=me&password=secret'; // This will request 'image.png?user=me&password=secret' loader.add('image.png').load(); loader.reset(); // This will request 'image.png?v=1&user=me&password=secret' loader.add('iamge.png?v=1').load(); -
loadingboolean
-
Loading state of the loader, true if it is currently loading resources.
-
onCompleteSignal.<Loader.OnCompleteSignal>
-
Dispatched when the queued resources all load.
The callback looks like Tiny.ResourceLoader.OnCompleteSignal.
-
onErrorSignal.<Loader.OnErrorSignal>
-
Dispatched once per errored resource.
The callback looks like Tiny.ResourceLoader.OnErrorSignal.
-
onLoadSignal.<Loader.OnLoadSignal>
-
Dispatched once per loaded resource.
The callback looks like Tiny.ResourceLoader.OnLoadSignal.
-
onProgressSignal.<Loader.OnProgressSignal>
-
Dispatched once per loaded or errored resource.
The callback looks like Tiny.ResourceLoader.OnProgressSignal.
-
onStartSignal.<Loader.OnStartSignal>
-
Dispatched when the loader begins to process the queue.
The callback looks like Tiny.ResourceLoader.OnStartSignal.
-
progressnumber
-
The progress percent of the loader going through the queue.
-
resourcesobject.<string, Tiny.loaders.Resource>
-
All the resources for this loader keyed by name.
Methods
-
staticTiny.loaders.Loader.addTinyMiddleware(fn)
-
Adds a default middleware to the Tiny loader.
Name Type Description fnfunction The middleware to add.
-
staticTiny.loaders.Loader.addTinyPreMiddleware(fn)
-
Adds a default middleware pre the Tiny loader.
Name Type Description fnfunction The middleware to add pre.
- Version:
- 1.1.7
-
add(name, url, options, cb) ❯ {Tiny.loaders.Loader}
-
Adds a resource (or multiple resources) to the loader queue.
This function can take a wide variety of different parameters. The only thing that is always required the url to load. All the following will work:
loader // normal param syntax .add('key', 'http://...', function () {}) .add('http://...', function () {}) .add('http://...') // object syntax .add({ name: 'key1' url: 'data:image/png;base64,iV...Jggg==' }, function () {}) .add({ url: 'http://...' }, function () {}) .add({ name: 'key3', url: 'http://...' onComplete: function () {} }) .add({ url: 'https://...', onComplete: function () {}, crossOrigin: true }) // you can pass JSONObject .add({ url: 'key4.json', // the name can be anything, but the extname must be .json metadata: { JSONObject: {"meta":{"image":"https://...","size":{"w":1730,"h":1158},"scale":"1"},"frames":{}}, fallback: function () {} }, xhrType: Tiny.loaders.Resource.XHR_RESPONSE_TYPE.JSONOBJECT, }) // version >= 1.3.0 // you can pass useCompressedTexture=true to use compressed texture .add('./res/x-0.json', { metadata: { useCompressedTexture: true } }) // version >= 1.5.0 // you can pass pixelFormat to use custom pixels .add('./res/xxx.png', { metadata: { pixelFormat: Tiny.TYPES.UNSIGNED_SHORT_4_4_4_4 } }) // and pass imageMetadata with pixelFormat on json type .add('./res/x-0.json', { metadata: { imageMetadata: { pixelFormat: Tiny.TYPES.UNSIGNED_SHORT_4_4_4_4 } } }) // you can also pass an array of objects or urls or both .add([ { name: 'key5', url: 'http://...', onComplete: function () {} }, { url: 'http://...', onComplete: function () {} }, 'http://...', 'data:image/png;base64,iV...Jggg==' ]) // and you can use both params and options .add('key6', 'http://...', { crossOrigin: true }, function () {}) .add('http://...', { crossOrigin: true }, function () {});Name Type Description namestring optional The name of the resource to load, if not passed the url is used.
urlstring optional The url for this resource, relative to the baseUrl of this loader.
optionsobject optional The options for the load.
Name Type Default Description crossOriginboolean optional Is this request cross-origin? Default is to determine automatically.
loadTypeTiny.loaders.Resource.LOAD_TYPE XHR optional How should this resource be loaded?「
XHR, IMAGE, AUDIO, VIDEO」xhrTypeTiny.loaders.Resource.XHR_RESPONSE_TYPE DEFAULT optional How should the data being loaded be interpreted when using XH?「
BLOB, BUFFER, DEFAULT, DOCUMENT, JSON, JSONOBJECT, TEXT」metadataobject optional Extra configuration for middleware and the Resource object.
Name Type Default Description useCompressedTextureboolean false optional 是否使用压缩纹理,会自动按照加载的图片链接加载当前设备支持的纹理格式,替换
.png为.astc.ktx或.pvr.ktxpixelFormatTiny.TYPES optional 是否使用特定格式的像素源作为纹理
loadElementHTMLImageElement | HTMLAudioElement | HTMLVideoElement null optional The element to use for loading, instead of creating one.
skipSourceboolean false optional Skips adding source(s) to the load element. This is useful if you want to pass in a
loadElementthat you already added load sources to.JSONObjectobject optional 加载的资源如果是一个 JSON 对象,将对象在这里传入,同时传入
url的格式为:*.json,xhrType的格式为:JSONOBJECTfallbackfunction optional Spritesheet 解析识别时的兜底回调
cbfunction optional Function to call when this specific resource completes loading.
- Version:
- 1.1.7
Returns:
Type Description Tiny.loaders.Loader Returns itself. -
destroy()
-
Destroy the loader, removes references.
- Version:
- 1.2.0
-
inherited load(cb) ❯ {Tiny.ResourceLoader}
-
Starts loading the queued resources.
Name Type Description cbfunction optional Optional callback that will be bound to the
completeevent.Returns:
Type Description Tiny.ResourceLoader Returns itself. -
Sets up a middleware function that will run before the resource is loaded.
Name Type Description fnfunction The middleware function to register.
Returns:
Type Description Tiny.ResourceLoader Returns itself. -
Resets the queue of the loader to prepare for a new load.
Returns:
Type Description Tiny.ResourceLoader Returns itself. -
run()
-
执行加载
Name Type Description opts.resourcesarray optional 资源集合
opts.onProgressfunction optional 加载进度回调函数
opts.onCompletefunction optional 单个资源加载完成回调函数
opts.onErrorfunction optional 单个资源加载失败回调函数
opts.onAllCompletefunction optional 所有资源加载完成回调函数
-
Sets up a middleware function that will run after the resource is loaded.
Name Type Description fnfunction The middleware function to register.
Returns:
Type Description Tiny.ResourceLoader Returns itself.