Итак, я наконец смог это решить, проблема заключалась в том, что маршруты с более чем одним параметром stati c или Dynami c (например: /me/edit
или /user/:id
) искали файл внутри папки , в данном случае me
или user
, которых не существует. Вот как я это решил:
Я создал папку под названием «production» внутри этой папки. Я запустил npm init, я вставил всю папку build
, созданную с помощью response. Затем я создал файл с именем server.js
(это точка входа, которую я указал). Этот файл содержит следующее:
const express = require('express')
const path = require('path');
const cors = require('cors')
// Initializing express
const app = express()
// Initializing middleware to indicate express where to serve the static files from:
app.use(express.static(path.join(__dirname, 'build')));
app.get('/*', function (req, res) {
res.sendFile(path.join(__dirname, 'build', 'index.html'));
});
app.use(cors())
const PORT = process.env.PORT || 4000
app.listen(PORT, () => console.log(`Server listening on port ${PORT} ?`))
Кроме того, я добавил это: <base href="/">
в свой index. html файл внутри папки сборки.
В пакете. json Я добавил стартовый скрипт "start": "node server.js"
и все, никогда не набирал npm начало так удовлетворительно ?
Теперь весь проект выглядит так:
введите описание изображения здесь