某些内置的React-Native函数(例如setAccessibilityFocus)仅在特定平台上运行。在所有平台上都可以调用这些函数的最佳方法是什么?
例如,起初我以为打电话给setAccessibilityFocus
只是一个小问题,但是我错了,相反,您遇到了is not a function
错误。我可以这样包裹它
if (Platform.OS === "ios") {
AccessibilityInfo.setAccessibilityFocus()
}
或者我可以按照以下方式做点事情
if (AccessibilityInfo.setAccessibilityFocus !== undefined) {
AccessibilityInfo.setAccessibilityFocus()
}
但是必须有比通过OS检查乱扔代码更好的方法。
答案 0 :(得分:0)
您可以尝试使用try catch
方法。
try {
AccessibilityInfo.setAccessibilityFocus()
}
catch(err) {
//if error eg: undefined goes here call another function
}
参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/try...catch