【问题标题】:How can I get started with integrating AWS Amplify to a Nuxt.js project?如何开始将 AWS Amplify 集成到 Nuxt.js 项目?
【发布时间】:2020-03-21 10:15:15
【问题描述】:

我最近开始使用 vue 和 nuxt。我想在我的项目中添加一个 AWS 后端。我已经看到 Amplify 很有用,但无法找到有关如何在 nuxt 中实现它的任何资源。有什么建议吗?

【问题讨论】:

  • 你能说明你实现了多少吗?有什么困难?
  • @gnomeria 我问是因为我不确定是否应该使用它。我正在决定是否应该使用那个或无服务器框架。从那以后,我决定使用 sls,因为我认为它更适合我的需求。

标签: nuxt.js aws-amplify


【解决方案1】:

我正在尝试实施 AWS 服务作为我正在开发的应用程序的后端。

通过执行以下步骤,我设法获得了使用我的 Nuxt 应用程序的基本设置。

1.- 创建 Amplify 插件文件。 (插件/amplify.js)

import Vue from 'vue'
import Amplify, * as AmplifyModules from 'aws-amplify'
import { AmplifyPlugin, components } from 'aws-amplify-vue'
import aws_exports from '@/aws-exports'
Amplify.configure(aws_exports)

Vue.use(AmplifyPlugin, AmplifyModules)

//register components individually for further use
// Do not import in .vue files
Vue.component('sign-in', components.SignIn)

2.- 将插件导入 Nuxt Config。

plugins: [
    {
        src: '~plugins/amplify.js',
        ssr: false
    }
]

我将尝试进一步详细说明,或者创建一个教程。希望对您有所帮助!

【讨论】:

【解决方案2】:

这是我的设置:

1/ plugins/amplify.client.js -> 这个名字使它在客户端执行

import Vue from 'vue'
import Amplify, * as AmplifyModules from 'aws-amplify'
import { AmplifyPlugin } from 'aws-amplify-vue'
import awsmobile from '~/aws-exports'
Amplify.configure(awsmobile)

Vue.use(AmplifyPlugin, AmplifyModules)

// Make Amplify available in store and Vue instances
export default (_, inject) => {
  inject('Amplify', AmplifyModules)
}

2/nuxt.config.js

plugins: ['@/plugins/amplify.client.js'],

它让我可以使用this.$Amplify.Hubstore.$Amplify 等命令,因此我可以在任何地方访问主要功能。

【讨论】:

  • Vue.prototype.$Amplify = AmplifyModules; 如果您只想在此使用 Amplify,则对我有用。$Amplify
猜你喜欢
  • 2015-09-18
  • 2019-04-18
  • 2022-08-10
  • 2019-12-19
  • 2020-01-30
  • 2021-05-20
  • 2023-03-20
  • 2021-03-01
  • 2019-08-10
相关资源
最近更新 更多