
本课程旨在教学如何利用 Rive 的 JavaScript 运行时(WebJS Runtime)来动态操控解耦的视图模型(View-Model)属性。通过数据绑定机制,开发者能够直接使用 JS 代码改变动画模型中的数字、字符串、布尔、触发器、颜色及枚举类型。这种方式消除了传统设计交接中复杂的硬编码状态机逻辑,使设计师在 Rive 中配置的 UI 元素与前端实时数据流完美闭环,大幅提升跨端协作的灵活度与运行效益。
- 变量声明的最佳实践:在 JavaScript 中,若属性引用或实例在后续生命周期中不需要重新指派(Re-assign),推荐在生产环境中使用
const声明以提升代码安全性与 V8 引擎的性能;本视频为了讲解的灵活性统一采用了let。 - 方法调用的差异(API Syntax):
- 数值/字符串/枚举 的赋值结尾使用
.value = newValue。 - 触发器(Trigger) 没有
.value属性,必须直接调用.trigger()方法来激活。 - 颜色(Color) 拥有专属的方法,需要使用
.rgb(R, G, B)或对应的运行时颜色 API 来传入通道数值。
- 数值/字符串/枚举 的赋值结尾使用
- 枚举值的硬编码约束:在 JS 中控制枚举属性(Enum)时,
.value = "String"传入的字符串必须与 Rive 编辑器中Enum列表内定义的 Option 名称(区分大小写)完全一致,否则无法正确触发状态机切流(Transitions)。 - 自动绑定(Auto Bind)前置条件:开启
autobind: true必须保证在 Rive 软件导出时勾选了 Export Instance。如果未勾选,运行时将无法识别暴露出的viewModelInstance接口。