Почему мы используем path.join и не используем относительный путь для доступа к общедоступному каталогу на сервере Express и node?

Я не понимаю, почему мы не используем относительный путь в нашем приложении вместо этого пути, который мы получаем после path.join. нельзя ли использовать относительный путь, например express.static('../public')?

const express = require('express');
const path = require('path');
const app = express();

const publicDir = path.join(__dirname,'../public')

app.use(express.static(publicDir));`

1 ответ

Если вы используете относительный путь с express.static(), то это зависит от того, где вы запустили свое приложение, не обязательно относительно __dirname Это означает, что простое изменение каталога, из которого вы запускаете приложение, может сломать ваше приложение.

Если вы построите полный путь, используя __dirname, то этот аспект вашего приложения не сломается, если вы запустите приложение из другого каталога. Это просто более надежно. Если вы хотите, чтобы путь был относительно__dirname, то вы также можете включить это в свой код.

Другие вопросы по тегам