如何在React-Native中使用yield调用?

问题描述 投票:0回答:1

我正在RN应用程序中实现指纹扫描,为此我找到了一个不错的教程,但是其中的代码具有我从未使用过的语法-yield call(),但是我用它搜索了一下,却找不到正确的解释它。这是代码:

if (isFingerPrintSupported === true) {
                        yield call(KeychainService.setCredentials, user_name, 
                                          JSON.stringify({ password }));
                    }

在这种情况下,还有其他可以使用的东西吗?如果没有,那么我该如何导入或安装它才能使其正常工作?

react-native call redux-saga yield
1个回答
0
投票

yield可以在生成器函数内部使用,并且它可以随时以异步方式暂停和恢复函数。另外,它还有助于从生成器函数返回值。

检查此document以获取更多信息。

call是redux-saga效果,有助于进行异步调用。检查this了解更多信息。

import { call } from 'redux-saga/effects'

function* authorize(user, password) {
  try {
    const response = yield call(/** Api call */, user, password)
    ...
  } catch(error) {
    ...
  }
}

如果您不想使用yield,则可以使用axiosfetch直接使用参数调用API。

希望这对您有所帮助。随时提出疑问。

© www.soinside.com 2019 - 2024. All rights reserved.