有人知道为什么操作员在响应本机(0.54.2)调试和发布版本时表现不同吗?
这在调试时效果很好。如果usageTip不是空字符串,并且是第一次加载,我们将在if中输入并向用户显示usageTip:
if (this.props.usageTip =! '' && this.props.firstTimeLoading) {
return (
<Text style={styles.disclaimerTextStyle}>{this.props.usageTip}</Text>
);
}
但是在发布时,if行将以某种方式将imageTip设置为布尔值true。那里发生了什么事?
我还找到了一种使它也可以发布的方法:
if (this.props.firstTimeLoading && (this.props.usageTip ==! '')) {
return (
<Text style={styles.disclaimerTextStyle}>{this.props.usageTip}</Text>
);
}
但是我很困惑,为什么我的代码的第一个版本表现得如此?也很难找到问题,因为发布版本调试不是很容易。 (至少我不知道任何简单的方法)
答案 0 :(得分:0)
使用React Native时,您将在两种环境中运行JavaScript代码:
在大多数情况下,React Native将使用JavaScriptCore Safari的引擎。
使用Chrome调试时,所有JavaScript代码都在Chrome中运行 本身,通过WebSockets与本机代码进行通信。 Chrome使用V8 作为其JavaScript引擎。
尽管两种环境都非常相似,但是您最终可能会遇到一些不一致之处。 To get More Detail