繁体   English   中英

如何返回 Stripe 的 createToken tokenId 并在 vuex 的另一个 function 中使用

[英]how to return Stripe's createToken tokenId and use it in another function in vuex

所以我在我的api.js文件中调用Stripe.card.createToken并希望返回这个 function 生成的令牌,以便我可以在我的 vuex 中使用它,我该怎么做?

// api.js

export const stripeToken = async ({ cardInfo }) => {
  const { data } = await Stripe.card.createToken({
    cardInfo,
  });
  return data;
};

所以我想像这样在 vuex 中的操作中使用它。 我这样做了,但它不起作用,它返回未定义:

//vuex

import { stripeToken } from '@src/store/api';
async stripeToken({ dispatch }, { cardInfo }) {
  const { data } = await stripeToken({ cardInfo });
  console.log('tokenId: ', data.tokenId);
},

我不熟悉 vuex,但是Stripe.card.createToken方法需要两个参数:一个 JavaScript object 包含用户输入的信用卡数据,以及一个回调 ZC1C425268E68385D1AB5074C17A9 到您可以在此处的 Stripe 文档中了解更多信息。

以下是使用Stripe.card.createToken显示令牌 ID 的方法:

Stripe.card.createToken(cardInfo, (status, response) => {
  if (response.error) {
    console.log(response.error);
  } else {
    console.log(response.id);
  }
});

请注意, Stripe.card.createToken是 Stripe.js v2 中的旧方法,现已弃用,因此我建议尽可能升级到 Stripe.js v3

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM