three.js FileLoader

2023-02-16 17:44 更新

使用XMLHttpRequest來加載資源的低級類,并由大多數(shù)加載器內部使用。 它也可以直接用于加載任何沒有對應加載器的文件類型。

代碼示例

const loader = new THREE.FileLoader();

//加載一個文本文件,并把結果輸出到控制臺上
loader.load(
	// resource URL
	'example.txt',

	// onLoad回調
	function ( data ) {
		// output the text to the console
		console.log( data )
	},

	// onProgress回調
	function ( xhr ) {
		console.log( (xhr.loaded / xhr.total * 100) + '% loaded' );
	},

	// onError回調
	function ( err ) {
		console.error( 'An error happened' );
	}
);

注意: 必須啟用緩存

THREE.Cache.enabled = true;

這是一個全局屬性,只需要設置一次,供內部使用FileLoader的所有加載器使用。 Cache 是??一個緩存模塊,用于保存通過此加載器發(fā)出的每個請求的響應,因此每個文件都會被請求一次。

構造函數(shù)

FileLoader ( manager : LoadingManager )

manager — loadingManager 是加載器所使用的加載管理器。 默認為 DefaultLoadingManager.

屬性

共有屬性請參見其基類Loader。

.mimeType : String

詳情 mimeType. 請參考 .setMimeType。默認為 undefined。

.responseType : String

請求的響應類型。 請參考 .setResponseType. 默認為 undefined.

.withCredentials : String

XMLHttpRequest是否使用證書。 請參考 .setWithCredentials. 默認為 undefined.

方法

共有方法請參見其基類Loader。

.load ( url : String, onLoad : Function, onProgress : Function, onError : Function ) : undefined

url — 文件的URL或者路徑,也可以為 Data URI.
onLoad (可選) — 加載完成時將調用。回調參數(shù)將是加載的響應。
onProgress (可選) — 將在加載過程中進行調用。參數(shù)將是XMLHttpRequest實例, 其中包含 total 和 loaded 字節(jié)
onError (可選) — 在加載錯誤時被調用。

加載URL并將響應傳遞給onLoad函數(shù)。

.setMimeType ( mimeType : String ) : this

設置正在加載的文件預期類型 mimeType 。請注意,在許多情況下,這將自動確定,因此默認情況下它是 undefined 。

.setResponseType ( responseType : String ) : this

改變響應的類型,其類型有效值如下:

text 或者空 string (默認) - 返回的數(shù)據(jù)類型為 string.
arraybuffer - 加載的數(shù)據(jù)類型到一個數(shù)組buffer中 ArrayBuffer 并進行返回。
blob - 返回的數(shù)據(jù)為 Blob。
document - 使用 DOMParser 解析文件。
json - 將文件解析為 JSON.parse.

src/loaders/FileLoader.js


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號