You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native中Animated.View使用scale变换报错:Invalid transform scaleDisliked

React Native Animated.View scale变换错误解决

错误原因很直接:你在transform数组里把变量名scaleDisliked当成了transform的键名,但React Native的transform属性只支持固定的变换类型键(比如scale、translateX、rotate等),不能用自定义变量名作为键。

修正后的代码如下:

const animationDisliked = useRef(new Animated.Value(0)).current;
const inputRangeDisliked = [0, 1];
const outputRangeDisliked = [1, 0.8];

const scaleDisliked = animationDisliked.interpolate({
  inputRange: inputRangeDisliked,
  outputRange: outputRangeDisliked
});

<Animated.View  
  style={{ 
    transform: [{ scale: scaleDisliked }], // 这里将插值结果作为scale类型的取值,而非自定义键名
    elevation:10,
    position:'absolute',
    right:10,
    width:95,
    height:95,
    borderRadius:95/2,
    backgroundColor:'white' 
  }}>
</Animated.View>

本质上,transform数组中的每个对象格式是{ 变换类型: 变换值 },你之前写的{scaleDisliked}等价于{scaleDisliked: scaleDisliked},这不符合React Native的transform规范,换成{scale: scaleDisliked}即可正常生效。

内容的提问来源于stack exchange,提问作者gabogabans

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 06:30:36