# AutoLoading 自动加载
在`Gradio`前端发送请求时自动为被包裹的内容添加加载动画。该组件会自动收集子组件的加载状态,建议至少在全局使用一次此组件,以显示兜底的加载反馈。
> **注:** 如果有多个嵌套的`AutoLoading`组件,则只有最内层的`AutoLoading`能收集到子组件的加载状态并展示加载动画。
在`Gradio`中,前端到服务端的请求一共有 4 种状态:
- `pending`:此时前端发出的请求还没有收到服务端的响应。
- `generating`:此时前端发出的请求已经收到了响应,但是服务端还没有完成所有内容返回(该状态并不是必定发生的,只有当服务端的处理函数使用`yield`返回值时才会存在)。
- `completed`:服务端返回了所有内容,本次请求结束。
- `error`:本次请求发生错误。
默认情况下,`AutoLoading`组件会:
- 在请求状态为`pending`时添加加载动画。
- 在请求状态为`generating`时结束加载动画,此时用户可以手动控制应用的加载效果,您也可以通过设置`generating=True`来继续展示动画。
- 在请求状态为`completed`时结束加载动画。
- 在请求状态为`error`时结束加载动画,您可以通过设置`show_error=True`来为用户展示错误信息(该信息会在页面居中显示)。
## 示例
## API
| 属性 | 类型 | 默认值 | 描述 |
| ------------ | ---- | ------ | ---------------------------------------------------------------------------------------- |
| generating | bool | False | 是否包含对`generating`状态的处理 |
| show_error | bool | True | 是否显示错误信息 |
| show_mask | bool | True | 是否显示遮罩 |
| show_timer | bool | True | 是否显示计时器 |
| loading_text | str | None | 加载中文案,默认不填写使用 `Gradio` 的加载文案显示(包括加载时间、当前用户的排队队列等) |