yuv-render
v2.0.0
Published
A WebGL-based YUV video frame renderer providing I420 format video data rendering capabilities, featuring texture management, canvas control, and resource release functions.
Readme
yuv-render
A lightweight Promise-based XHR library that wraps traditional
XMLHttpRequestinto a Promise interface to simplify asynchronous request development.
Installation
::: code-group
npm add yuv-renderpnpm add yuv-renderyarn add yuv-render<script src="https://cdn.jsdelivr.net/npm/yuv-render/dist/index.umd.min.js"></script>
<script>
const { ajax } = XhrPromisify;
// GET request
ajax({
url: 'https://api.example.com/data',
method: 'GET'
})
.then(response => {
console.log('Response data:', response);
})
.catch(error => {
console.error('Request failed:', error);
});
</script>:::
Documentation
For detailed usage instructions and API references, please visit the official documentation:
Quick Start
Basic Usage
import { ajax } from 'yuv-render';
// GET request
ajax({
url: 'https://api.example.com/data',
method: 'GET'
})
.then(response => {
console.log('Response data:', response);
})
.catch(error => {
console.error('Request failed:', error);
});
// Simplified syntax (async/await)
async function fetchData() {
try {
const response = await ajax({ url: '/api/data' });
console.log(response);
} catch (error) {
console.error(error);
}
}Advanced Usage
Abort Requests
const controller = new AbortController();
const { signal } = controller;
ajax({
url: '/api/long-polling',
signal
}).then(...);
// Abort the request manually
controller.abort();Custom Headers
ajax({
url: '/api/protected',
headers: {
'Authorization': 'Bearer your_token'
}
});Error Handling
All exceptions throw an AjaxError object with the following properties:
class AjaxError extends Error {
code: string; // Error code (e.g., `ERR_NETWORK`)
status?: number; // HTTP status code (if available)
statusText?: string; // HTTP status text (if available)
data?: any; // Response data (if available)
request?: XMLHttpRequest; // Original request object (if available)
}Error Types
| Error Code | Type | Description |
|------------|------|-------------|
| ABORT_ERR | AjaxError | Request was manually aborted |
| ERR_NETWORK | AjaxError | Network error (e.g., DNS resolution failure) |
| ERR_HTTP_REQUEST_TIMEOUT | AjaxError | Request timeout |
| ERR_BAD_REQUEST | AjaxError | HTTP 4xx status code error |
| ERR_BAD_RESPONSE | AjaxError | HTTP 5xx status code error |
Browser Support
|
|
|
|
|
--- | --- | --- | --- | --- |
Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ |

