1

如何访问 serverMiddleware 中 Nuxt.config.js 文件中 privateRuntimeConfig 中声明的配置?

$config 和 context 在 serverMiddleware 中不可用。

我在 Nuxtjs 中使用 serverMiddleware 来编写 api。

它被调用但是我试图从 Nuxt.config.js 文件中的 privateRuntimeConfig 传递一些配置。

const bodyParser = require('body-parser')
const app = require('express')()
const { uuid } = require('vue-uuid')
const productsModule = require('../lib/bal/products')

app.use(bodyParser.json())
app.post('/create', (req, res) => {
    console.log('Config:' + String(req))
    const result = productsModule.createProduct(this.$config, req.body.name, 'Trial product', '', 10, false, uuid.v1)
    if (result === undefined) {
        res.status(500).json({ error: 'Failed to create product. Try again!' })
        return
    }
    console.log(result)
    res.status(200).json(result)
})

module.exports = app
4

1 回答 1

0

是的,你是对的,因为serverMiddleware只在服务端运行,你不能使用 this.$config 或 context.$config。我所做的是,如果它是静态数据,我使用环境变量来调用数据。

.env 文件

APP_USERNAME=M457ERCH1EF

serverMiddleware 文件即 xxx.js

....
const username = process.env.APP_USERNAME
....
于 2020-12-31T08:04:36.483 回答