# [name]

Classe base per l'implementazione dei loader.

## Costruttore

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

[page:LoadingManager manager] — Il [page:LoadingManager loadingManager] del loader da utilizzare. Il valore predefinito è [page:LoadingManager THREE.DefaultLoadingManager].

Crea un nuovo [name].

## Proprietà

### [property:String crossOrigin]

La stringa crossOrigin per implementare il CORS per caricare la url da un dominio diverso che permette il CORS. Il valore predefinito è `anonymous`.

### [property:Boolean withCredentials]

Indica se XMLHttpRequest utilizza le credenziali. Vedi [page:.setWithCredentials]. Il valore predefinito è `false`.

### [property:LoadingManager manager]

Il [page:LoadingManager loadingManager] utilizzato dal loader. Il valore predefinito è [page:DefaultLoadingManager].

### [property:String path]

Il percorso di base da cui l'asset sarà caricato. Il valore predefinito è una stringa vuota.

### [property:String resourcePath]

Il percorso di base da cui risorse addizionali come le texture saranno caricate. Il valore predefinito è una stringa vuota.

### [property:Object requestHeader]

L'[link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header header della richiesta] utilizzato nella richiesta HTTP. Vedi [page:.setRequestHeader]. Il valore predefinito è un oggetto vuoto.

## Metodi

### [method:undefined load]()

Questo metodo deve essere implementato da tutti i loader concreti. Contiene la logica per il caricamento della risorsa dal backend.

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

[page:String url] — Una stringa contenente il percorso/URL del file che deve essere caricato.
[page:Function onProgress] (opzionale) — Una funzione da chiamare mentre il caricamento è in corso. L'argomento sarà l'istanza ProgressEvent, la quale contiene .[page:Boolean lengthComputable], .[page:Integer total] e .[page:Integer loaded]. Se il server non imposta l'header Content-Length; .[page:Integer total] sarà 0.

Questo metodo è equivalente a [page:.load], ma restituisce una [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise Promise].

[page:Function onLoad] è gestito da [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/resolve Promise.resolve] e [page:Function onError] è gestito da [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/reject Promise.reject].

### [method:undefined parse]()

Questo metodo deve essere implementato da tutti i loader concreti. Contiene la logica per il parsing della risorsa nelle entità di three.js.

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

[page:String crossOrigin] — La stringa crossOrigin per implementare il CORS per caricare la url da un dominio diverso che permette il CORS.

### [method:this setWithCredentials]( [param:Boolean value] )

Indica se XMLHttpRequest utilizza le credenziali come cookie, header di autorizzazione o certificati client TLS. Vedi [link:https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials XMLHttpRequest.withCredentials].
Si noti che non ha effetti se stai caricando file localmente o dallo stesso dominio.

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

[page:String path] — Imposta il percorso base per la risorsa.

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

[page:String resourcePath] — Imposta il percorso base per le risorse dipendenti come le texture.

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

[page:Object requestHeader] - key: Il nome dell'header il cui valore deve essere impostato; value: Il valore da impostare come corpo dell'header.
Imposta l'[link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header header della richiesta] utilizzato nella richiesta HTTP.

## Source

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