Node ES模块环境下如何将Stripe的require写法转为import?
Stripe ES模块(type: module)正确导入写法
你的尝试写法无效,因为你没有保存调用工厂函数后得到的Stripe实例,后续无法用它调用Stripe的API。正确的写法如下:
标准写法
先导入Stripe工厂函数,再调用它传入密钥得到可用的实例:
import Stripe from 'stripe'; const stripe = Stripe('sk_test_51_secretkey');
精简写法(可选)
也可以直接在导入后立即调用并赋值,Stripe支持用new关键字调用工厂函数:
import Stripe from 'stripe'; const stripe = new Stripe('sk_test_51_secretkey');
你的写法问题说明
你写的import stripe from 'stripe'; stripe('sk_test_51_secretkey');中,第一行的stripe是Stripe的工厂函数,第二行调用它虽然能生成实例,但你没有把这个实例赋值给变量——此时stripe仍然是原来的工厂函数,不是可调用API的实例,后续执行stripe.charges.create()这类操作会直接报错。
内容的提问来源于stack exchange,提问作者ttyagi3963
相关产品推荐
相关产品推荐

