アプリケーションにストライプをインポートする必要があります
最初にストライプnpmパッケージをインストールしました
npm install stripe --save
Stripeのドキュメントには、APIに接続する前に秘密鍵を設定する必要があると記載されています。
Nodeはこれが好きです
var stripe = require('stripe')(' your stripe API key ');
TypeScriptに変換する必要があります
以下の方法で試してみました。しかし、それは私にとってはうまくいきませんでした
import * as stripe from 'stripe';
stripe('sk_test_...')
誰かがこの問題を解決するのに役立つことができれば、プロジェクトを遅滞なく続行することは私にとって大きな助けになります。
ありがとうございました
britzkopf が言ったように、stripはまだ独自の定義を提供していません(おそらく提供しないでしょう)が、 @ types/stripe からの型定義を使用できます。
npm install stripe @types/stripe
次に、次のようにStripe
クラスをインポートして作成します。
import * as Stripe from 'stripe';
const stripe = new Stripe('xxx_xxx_xxx');
何らかの理由でより細かいインポートが必要な場合は、代わりにこの(ややハックな)アプローチを使用できます。
import { resources } from 'stripe';
const stripeData = require('stripe')('xxx_xxx_xxx');
const customers = new resources.Customers(stripeData, null);
機能リクエスト です。別の親指をあきらめてください。
私は同じ問題を抱えていて、提供された解決策は私にとってうまくいきませんでした:
import * as Stripe from 'stripe';
const stripe = new Stripe('xxx_xxx_xxx');
このアプローチを使用すると、このエラーが発生しました
[ts]型が呼び出しまたは構成シグネチャを持たない式では「new」を使用できません。 stripe.ts(1、1):タイプはこのインポートで発生します。名前空間スタイルのインポートは、呼び出すことも構築することもできず、実行時にエラーが発生します。代わりに、デフォルトのインポートまたはimport requireの使用を検討してください。 (エイリアス)クラスStripe(エイリアス)名前空間StripeインポートStripe
"allowSyntheticDefaultImports": true
のtsconfig.json
を使用して機能させました。このコンパイルオプションを使用すると、TypeScriptで次のことが有効になります。
import Stripe from "stripe";
const secret = process.env.STRIPE_SECRET!;
export const stripe = new Stripe(secret);