Nuxt 3 将包含 JSON 文件的文件夹添加到构建中,以便使用 `fs` 进行读取

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

该项目有一个

data
文件夹,其中存储了许多带有配置的 json 文件。根据 api 请求(内置于 nuxt 3 中),我读取某个 JSON 文件(使用
fs
)并输出带有附加数据的结果。在开发模式下它可以工作,但在生产模式下不会保存包含 json 文件的文件夹。如何将文件夹上传到构建?

nuxt.js vite nuxtjs3
2个回答
1
投票

您可以尝试导入 json 文件,而不是使用 fs 读取。

import data from './folder/file.json' assert { type: 'json' }

这应该有助于捆绑程序知道需要包含这些文件。


0
投票

这是一个完整的示例。

在 server/api 下创建一个文件,例如 getTitles.js

在根文件夹上创建名为 data 的文件夹,并使用测试 json 文件“test.json”

文件内容

import path from "path";
import fs from 'fs/promises'

export default defineEventHandler(async (event) => {

    try {
     
        const r  = await fs.readFile(path.join(process.cwd(), 'data','test.json'),'utf-8')
 
        console.log(r);
      
        return r
    
      } catch (error) {
        console.error('Upload failed:', error);
      }
    
})

确保服务器文件夹下有包含以下内容的“tsconfig.json”文件。

{
  "extends": "../.nuxt/tsconfig.server.json"
}
© www.soinside.com 2019 - 2024. All rights reserved.