# 高性能模式
区别于常规模式,高性能模式具备较高的性能,对于极高体验要求的简易动画,是个不错的选择,它的使用也很方便,比如:
const action = Bling._.MoveTo(3000, Bling.point(120));
细心的你或许已经看破,是的,就是在 Bling 对象后加个 _
,看上去是不是很清晰。
然而,Bling._
对象提供的动画类型较为有限(扩展空间相对也小很多):
- MoveBy
- MoveTo
- ScaleBy
- ScaleTo
- RotateBy
- RotateTo
BackBlink- FadeTo
- FadeIn
- FadeOut
BreatheShakeJumpUp- FlipX
- FlipY
支持的特性也较为有限:
- 不能监听动画运行中、完成、停止的回调,也不能主动控制它的暂停、恢复
- 不能做循环及其组合的执行
- 缓冲方法有限,不能设置插值
不过,你可以和常规模式直接搭配使用,追求“极(ke)致(ke)”的你不会太失望:
{
"usingComponents": {
"_": "mini-ali-bling/_",
"bling": "mini-ali-bling/bling"
}
}
<bling
className="container"
ref="BlingRef"
>
<view />
</bling>
<_
className="bling"
ref="_Ref">
<view />
</_>
<!-- 嵌套也可以 -->
<bling
className="container"
ref="BlingRef"
>
<_
className="bling"
ref="_Ref">
<view />
</_>
</bling>
const { Bling } = $global;
const refs = {
BlingRef(ref) {
this.BlingRef = ref;
},
_Ref(ref) {
this._Ref = ref;
},
};
Page({
onReady() {
const shakeAction = Bling.Shake(150, 5);
const fadeOutAction = Bling._.FadeOut(500);
shakeAction.on('complete', () => {
console.log('complete shake');
});
this.BlingRef.runAction(action);
this._Ref.runAction(fadeOutAction);
},
...refs,
});