【发布时间】:2023-03-26 03:08:01
【问题描述】:
我在main.ts配置静态文件夹
app.useStaticAssets({
root: path.resolve(__dirname + '/public'),
});
现在在运行时出现错误TypeError: root path must be a string
我尝试使用path.join(__dirname + '/public'), - 没有帮助。
我确实导入了import * as path from 'path'之类的路径
任何想法如何解决?
更新: 根据上面的答案,我正在尝试:
app.useStaticAssets(join(__dirname, '..', 'public')); - 收到错误{"statusCode":404,"error":"Not Found","message":"Cannot GET /"}
也试过了:
app.useStaticAssets({
root: path.join(__dirname, '..', 'public'),
prefix: '/public/',
});
这个错误仍然相同 - TypeError: root path must be a string
我的控制器方法如下:
@Get()
root(@Res() res) {
res.sendFile('index.html');
}
更新:
如果我有app.useStaticAssets(path.join(__dirname, '..', 'public')); 并删除root 控制器方法仍然有404 错误。
【问题讨论】:
标签: typescript express nestjs