javascript - 在 React Native 中函数成功后,如何立即启动新函数

标签 javascript react-native ecmascript-6

我想在一个函数完成后运行一个函数,并将一些数据传递给第二个函数。 我分别测试了这两个功能,它们都有效。但我想在第一个完成后立即启动第二个

这是我的代码,但第二个函数无法正常运行。

const ChargeCard = (dispatch) => ({
    cardNumber,
    expiryMonth,
    expiryYear,
    cvc,
    email,
    amountInKobo,
    id
}) => {

    try {
        RNPaystack.chargeCard({
            cardNumber: cardNumber,
            expiryMonth: expiryMonth,
            expiryYear: expiryYear,
            cvc: cvc,
            email: email,
            amountInKobo: amountInKobo * 100

        })
            .then(response => {

                if (response) {
                    setBasic({ id }) //the function to run if this is successful
                }                
            })

    } catch {

        dispatch({
            type: "ADD_ERROR",
            payload:
                "Something went wrong during payment, please try again, don't worry you have not been charged."
        });    
    }

};

这个函数我想立即运行即成功;

const setBasic = () => async ({ id }) => {
    const Basic = 1
    const response = await appApi.put(`/usersub/${id}`, { Basic });
    if (response) {
        console.log(response.data)
    }
}

最佳答案

将第二个函数更改为:

const setBasic = async ({ id }) => {
    const Basic = 1
    const response = await appApi.put(`/usersub/${id}`, { Basic });
    if (response) {
        console.log(response.data)
    }
}

您将其定义为:

const setBasic = () => async ({ id }) => {

但是你用以下方式调用它:

 setBasic({ id }) 

关于javascript - 在 React Native 中函数成功后,如何立即启动新函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60284305/

相关文章:

javascript - 是否有任何自动化工具可以从 COLLADA 格式的 3d 模型生成 2d 图像以显示在网站上?

javascript - react-native app 已经启动,现在添加导航

javascript - React Native 发布构建崩溃问题,但在调试时它工作正常

javascript - 无法在 react 组件中设置状态

javascript - JS(ES6): Merge arrays based on id and concatenating sub arrays

javascript - <g> 使用交互式指南时属性转换 ="translate(NaN,NaN)"

javascript - 使用 ajax codeigniter 动态依赖下拉列表

javascript - 无法隐藏/更改 react native 组件的可见性

webpack - 使 babel6 在 webpack 中支持 Array.from 的最佳方法是什么?

javascript 迭代嵌套对象数组中的对象并按 ids 过滤并返回更新后的相同原始数据集