如何在 React Native 和 Typescript 项目中使用 AWS Amplify?

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

我正在尝试在使用打字稿的反应本机项目中添加放大身份验证。 amplify 文档中给出了一个包'aws-amplify-react-native',它用作中间件来验证我们的应用程序。 但这个包仅在基于 javascript 的项目中受支持。 对于 Typescript,它显示一个错误,例如

Could not find a declaration file for module 'aws-amplify-react-native'.
Try `npm install @types/aws-amplify-react-native` if it exists or add a new declaration (.d.ts) file containing `declare module 'aws-amplify-react-native';`

没有像 '@types/aws-amplify-react-native' 这样的可用软件包

那么有人可以帮我解决这个问题吗?

typescript amazon-web-services react-native authentication aws-amplify
3个回答
14
投票

不幸的是,在回答这个问题时还没有定义的类型。但是,您可以像这样调用

@ts-ignore

// @ts-ignore
import Amplify, { Auth } from 'aws-amplify';
// @ts-ignore
import awsconfig from './aws-exports';
// @ts-ignore
import { withAuthenticator } from 'aws-amplify-react-native'

Amplify.configure(awsconfig);

9
投票

目前没有可用于 aws-amplify-react-native 的官方 TypeScript (TS) 类型。要抑制 TypeScript 警告,您需要定义自己的 TS 声明文件 (*.d.ts)。

要获得近似的输入,您可以将此文件复制到您的项目中。这些是 GitHub 用户 dantasfiles 编写的打字内容。请记住,它们并不准确,可以更精确地指定。


0
投票

为了完整起见,万一有人在 2024 年 5 月之后找到这个答案:从 Amplify Gen 2 发布开始,TypeScript 得到了完全支持,并融入了开发人员体验中……在给出这个答案时,有一些针对 React Native 的警告。

注意事项 bing:

有关详细信息,请参阅以下文档链接:

还有一个第 1 代到第 2 代的迁移指南

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.