Javascript:?操作员
Javascript :? operator
我不知道这是做什么的,甚至是什么。有好心人指点我要研究什么吗?
circle: (null : ?{ setNativeProps(props: Object): void }),
它是 React Native 示例的一部分,也是 React Native class 定义的一部分。外部部分是(缩写):
var NavigatorIOSExample = React.createClass({
...
circle: (null : ?{ setNativeProps(props: Object): void }),
...
});
我认为这是对三元运算符的一些巧妙使用。一个匿名函数。但是?
来源:https://facebook.github.io/react-native/docs/panresponder.html
声明的语法来自Flow。它说 'circle' 是一个带有 属性 的对象,它是一个名为 'setNativeProps':
的函数
{ setNativeProps(props: Object): void }
它还表示圆圈 is nullable(由前面的“?”表示)并且在指定类型的对象被分配给它之前默认值为 null。
如果您进一步查看示例,您会看到调用代码如何在调用 setNativeProps 之前检查是否已分配圆:
this.circle && this.circle.setNativeProps({
backgroundColor: CIRCLE_HIGHLIGHT_COLOR
});
我不知道这是做什么的,甚至是什么。有好心人指点我要研究什么吗?
circle: (null : ?{ setNativeProps(props: Object): void }),
它是 React Native 示例的一部分,也是 React Native class 定义的一部分。外部部分是(缩写):
var NavigatorIOSExample = React.createClass({
...
circle: (null : ?{ setNativeProps(props: Object): void }),
...
});
我认为这是对三元运算符的一些巧妙使用。一个匿名函数。但是?
来源:https://facebook.github.io/react-native/docs/panresponder.html
声明的语法来自Flow。它说 'circle' 是一个带有 属性 的对象,它是一个名为 'setNativeProps':
的函数{ setNativeProps(props: Object): void }
它还表示圆圈 is nullable(由前面的“?”表示)并且在指定类型的对象被分配给它之前默认值为 null。
如果您进一步查看示例,您会看到调用代码如何在调用 setNativeProps 之前检查是否已分配圆:
this.circle && this.circle.setNativeProps({
backgroundColor: CIRCLE_HIGHLIGHT_COLOR
});