如何解决React Native Reanimated:“AnimatedNode<number>”类型的参数不可分配给“number”类型的参数.ts(2345)
我需要使用 React Native Reanimated(https://www.npmjs.com/package/react-native-reanimated) 创建一个抽屉动画。
更新前插值方法使用 2 个参数正常工作。 像
一样使用interpolate(
props.progress,{
[0,1],[1,0.85],Extrapolate.CLAMP
}
);
但更新后,该方法会带3到4个参数
interpolate(
props.progress,[0,Extrapolate.CLAMP
);
现在我得到如下错误
Argument of type 'Animatednode<number>' is not assignable to parameter of type 'number'
我当前的 React Native Reanimated 版本是 2.1.0
如下所示通过 drawerContent(DrawerContentComponentProps) 传递道具
drawerContent={(props) => {
const scale = interpolate(
props.progress,Extrapolate.CLAMP
);
const borderRadius = interpolate(
props.progress,10],Extrapolate.CLAMP
);
screenStyle = {
transform: [
{
scaleY: scale,},],borderRadius,};
return <SideBar {...props} user={user} />;
}}
```
解决方法
在 Reanimated 2 中,interpolate 被重命名为 interpolateNode。所以我改变了我的代码
...
const scale = interpolateNode(props.progress,{
inputRange: [0,1],outputRange: [1,0.85],extrapolate: Extrapolate.CLAMP,});
const borderRadius = interpolateNode(props.progress,10],});
...
而且它工作正常
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。