Я хочу обслуживать статические файлы HTML, которые находятся в папке /dist
вне проекта Nest.index.html
загружен успешно, но не удается загрузить любой файл JS (404
ошибка).
У меня есть проект Node / Express.js, который использует
app.use('/', express.static('../client/dist'))
, и он работаетотлично.
В проекте Nest, однако,
app.setBaseViewsDir(join(__dirname, '../../client/dist'))
не работает.
В AppController
я пробовал
import { Response } from 'express';
@Get()
get(@Res() res: Response) {
res.sendFile('index.html', {
root: '../client/dist',
});
}
Но не повезло.
Как уже упоминалось, index.html
успешно загружен.Так что проблема не в неправильном пути.Также проблема не в неправильных src-путях в index.html
, потому что в проекте Express используются те же самые файлы.
/dist
|-index.html
|-main.js
|-etc.
В index.html:
<script type="text/javascript" src="main.js"></script>
Itтакже не работает, когда я помещаю папку dist в проект Nest (и изменяю путь).
Я нашел решение:
Я сейчас использую экспресс-модуль:
import * as express from 'express';
...
app.use('/', express.static('../client/dist'));