首页 > 解决方案 > 我可以使用 Nuxt.js 从数据库中渲染数据吗?

问题描述

我正在学习 nuxt.js,所以我决定用它创建一个小项目。我阅读了几个文档。不过,有些事情我并没有完全理解。

如果Nuxt可以使用多个后端框架(express、hapi、koa 等),我可以使用类似sequelize的东西并用它创建一个全栈应用程序吗?

例如,我使用expresssequelize访问数据库。然后使用nuxtasyncData将其呈现给我的组件,而无需使用axios获取。可能吗?需要一些关于此的信息

标签: node.jsvue.jssequelize.jsaxiosnuxt.js

解决方案


Nuxt.js 与后端无关——这意味着您可以使用任何后端技术来支持您的 Nuxt.js(或 Vue.js)应用程序。在您的情况下,您可以使用 express 和 sequelize 创建后端。您不能直接从您的 nuxt 访问您的数据库,您需要创建将在您的 asyncdata 中提供数据的接口。

<script>
import Customers from '~/plugins/Customers.js'
export default{
  asyncData ({ params }) {
    return Customers.getCustomers()
    .then(result => { customers: result.users})
  } 
}
</script>

在以下示例中,getCustomers() 返回一个包含用户的 Promise。在 Customers.js 中,您创建一个接口来访问您的数据库。希望这能让您了解如何实现,始终建议您抽象出前端和后端,以便将来如果您希望更改后端堆栈,您将很容易更新,同时向您的快速服务器发出 API 请求在你的 asyndata 中会很好。


推荐阅读