跳到主要内容

Rive 参数

本页是高级 Rive 类的构造函数选项、类型和实例方法的参考文档,以及若干其他导出类。

Rive 构造函数参数

export interface RiveParameters {
canvas: HTMLCanvasElement | OffscreenCanvas; // 必需
src?: string; // src、buffer 或 riveFile 必选其一
buffer?: ArrayBuffer; // src、buffer 或 riveFile 必选其一
riveFile?: RiveFile; // src、buffer 或 riveFile 必选其一
artboard?: string;
stateMachines?: string | string[]; // 强烈建议设置此属性
layout?: Layout;
autoplay?: boolean;
autoBind?: boolean;
useOffscreenRenderer?: boolean;
enableRiveAssetCDN?: boolean;
shouldDisableRiveListeners?: boolean;
isTouchScrollEnabled?: boolean;
automaticallyHandleEvents?: boolean;
dispatchPointerExit?: boolean;
enableMultiTouch?: boolean;
drawingOptions?: DrawOptimizationOptions;
onLoad?: EventCallback;
onLoadError?: EventCallback;
onPlay?: EventCallback;
onPause?: EventCallback;
onStop?: EventCallback;
onLoop?: EventCallback;
onStateChange?: EventCallback;
onAdvance?: EventCallback;
assetLoader?: AssetLoadCallback;
enablePerfMarks?: boolean;

// 已弃用参数
animations?: string | string[]; // 已弃用,使用 stateMachines 替代
}

关键参数说明

  • canvas - (必需) 提供用于绘制 Rive 动画的 <canvas> 元素
  • 加载 .riv 文件(以下三选一):
    • src - 托管 URL 或应用相对路径
    • buffer - .riv 字节的 ArrayBuffer
    • riveFile - 跨实例提供已加载的 RiveFile,参见缓存 Rive 文件
  • stateMachines - (强烈建议) 要加载的状态机名称。如不提供,当前 Rive 将使用找到的第一个线性动画(已弃用行为),下一主要版本将默认使用画板的默认状态机
  • layout - 提供 new Layout() 实例,参见布局
  • autoplay - 加载后自动播放,默认 false
  • autoBind - 自动查找默认视图模型和实例绑定到画板
  • useOffscreenRenderer - 使用共享离屏 WebGL2 上下文。显示多个 Rive 实例时强烈建议设为 true
  • enableRiveAssetCDN - 允许运行时自动加载 Rive CDN 中的资源(如字体),默认 true
  • shouldDisableRiveListeners - 禁用 <canvas> 元素上的 Rive 监听器
  • isTouchScrollEnabled - 在触控设备上允许触摸/拖拽时的滚动行为
  • automaticallyHandleEvents - 启用运行时自动处理 Rive 事件(如自动打开 URL),默认 false
  • enableMultiTouch - 启用多点触控支持,默认 false

回调

  • onLoadonLoadErroronPlayonPauseonStoponLooponStateChangeonAdvance

相关指南