Amplify 无法使用 Amplify 识别预先存在的 Vue.js 项目

Posted

技术标签:

【中文标题】Amplify 无法使用 Amplify 识别预先存在的 Vue.js 项目【英文标题】:Amplify doesn't recognise pre-existing Vue.js project with Amplify 【发布时间】:2021-02-16 10:15:35 【问题描述】:

我正在着手开发由另一个团队使用 AWS Amplify 开发的 Vue.js 应用程序。他们使用 Amplify Cli 将 Auth 添加到应用程序中。

我已经从 GitHub 上下载了这个项目。当我运行应用程序时,Auth 服务工作正常。

我现在正在尝试使用 amplify add storage 添加存储,但我正在努力让 Amplify Cli(我在自己的项目中运行良好)与新项目一起使用。

我试过了:

amplify configure project,失败并显示消息“您没有在有效的 Amplify 项目中工作。使用应用程序目录根目录中的“amplify init”来初始化您的项目,或使用“amplify pull”来下拉现有项目。 (但我不想启动一个新项目,这是一个我已经 git 拉取的现有项目) amplify pull --appId myAppIDFromTheAmplifyConsole --envName dev,失败并显示消息“路径上的文件:'/[thefullpath]/amplify/.config/local-env-info.json' 不存在”(我可以看到该文件不存在。其他团队已确认该文件从未存在过。)

我的问题是:

    我应该按照第一个要点错误消息的提示运行amplify init 吗? auth 服务正在运行,我不想破坏 Amplify 创建的现有 cognito 用户池。 amplify init 是否会推送或重新运行 cloudformation 脚本并因此更改后端? 如果不应该,我应该怎么做?

谢谢!

【问题讨论】:

【参考方案1】:

没有答案的问题,所以我会为以后的访客回答。 您需要在amplify configure 之后运行amplify init,它将初始化一个项目并将您的本地项目与云环境相关联。 amplify init 将提出问题并在回答后,/[thefullpath]/amplify/.config/local-env-info.json 文件将被创建。 local-env-info.json 应该在 .gitignore 文件中,因为它包含有关本地初始化环境的信息。

注意:amplify init 不会将您的更改推送到云端

【讨论】:

【参考方案2】:
    确保您已安装 Amplify CLI,放大版本检查:amplify --version 在项目文件夹上运行: amplify pull --appId [your app id] --envName [environment name] 运行上述命令后会询问:aws region,选择你的放大项目上传的区域,next-->输入AWS access key和AWS secret key 一旦放大拉取成功,您就完成了,现在您可以添加更多您想要的服务。

【讨论】:

以上是关于Amplify 无法使用 Amplify 识别预先存在的 Vue.js 项目的主要内容,如果未能解决你的问题,请参考以下文章

AWS Amplify and React - 找不到模块:无法解析“@aws-amplify/analytics”

无法使用 aws-amplify 从 cognito 获取更新的属性及其值

AWS Amplify AppSync 订阅无法正常工作

无法解析模块“@aws-amplify/ui-react/styles.css”的路径

使用 EJS 的 ExpressJS 在 AWS Amplify 上部署时无法加载静态资产

无法使用 Amazon Amplify 从 Lambda 调用 GraphQL