Animated.Value的PropTypes?

时间:2019-12-19 06:47:12

标签: javascript reactjs react-native react-proptypes react-animated

我在父级上定义了“动画值”

const scrollY = new Animated.Value(0);

console.log(scrollY); // 0;
console.log(typeof scrollY); // object;

然后我需要将该值传递给我的组件,如下所示

<ChildComponent animatedValue={scrollY} />

现在我想知道在ChildComponent上,我的道具animatedValue的正确原型应该是什么?

ChildComponent.propTypes = {
  animatedValue: PropTypes.number.isRequired
};

如果我将其定义为PropTypes.number,则会得到警告,这是有道理的,因为typeof scrollY是对象。

但是由于eslint错误,我们无法在下面定义,对于对象,我们应该使用PropTypes.shape, 但我不知道应该设置什么形状?

ChildComponent.propTypes = {
  animatedValue: PropTypes.object.isRequired // eslint error
};

1 个答案:

答案 0 :(得分:2)

您可以检查传递的对象是否是类的实例

PropTypes.instanceOf(Animated.Value)