Я совершенно новичок в этой области. Я прошу прощения за любые ошибки. Я работаю над проектом node js, используя веб-пакет, HTML загрузчик. Я использую зависимость сервера dev для тестирования в localhost. Все модели и виды, а также файлы индекса шаблона. html находятся в папке 'sr c'. Конфигурационный пакет и пакет json и файлы сервера. js находятся в каталоге root. Загрузчик webpack HTML используется для загрузки файла index. html в папку dist. В папке 'dist' есть папка с именем css, внутри которой находится стиль. css. Все работает в режиме разработки, и я могу запустить страницу на моем локальном хосте, но проблема начинается, когда я пытаюсь запустить «npm run start», который фактически включает «сервер узла. js». И затем, когда я пытаюсь получить доступ к странице на локальном хосте, стилизация страницы не работает, но интерактивное поведение страницы работает нормально. Я думаю, что 'href', который связывает css в файле index.htm, неверен. Кто-нибудь знает, что не так в моем коде? Я приложил все изображения и код, который я использую.
webpack .config. js
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: ['./src/js/index.js'],
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'js/bundle.js'
},
devServer:{
contentBase: './dist'
},
plugins: [
new HtmlWebpackPlugin({
filename: 'index.html',
template: './src/index.html'
})
],
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use:{
loader: 'babel-loader'
}
}
]
}
}
пакет. json файл
{
"name": "forkify",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"dev": "webpack --mode development",
"dev-start": "webpack-dev-server --mode development --open",
"heroku-postbuild": "webpack --mode production",
"start": "node server.js"
},
"author": "Sayeedur Rahman",
"license": "ISC",
"devDependencies": {
"@babel/core": "^7.9.0",
"@babel/preset-env": "^7.9.5",
"babel-loader": "^8.1.0",
"html-webpack-plugin": "^4.2.0",
"webpack": "^4.20.2",
"webpack-cli": "^3.1.1",
"webpack-dev-server": "^3.10.3"
},
"dependencies": {
"axios": "^0.19.2",
"core-js": "^3.6.5",
"express": "^4.17.1",
"fractional": "^1.0.0",
"regenerator-runtime": "^0.13.5",
"uniqid": "^5.2.0"
},
"engines": {
"node": "12.16.1",
"npm": "6.13.4"
}
}
сервер. js файл
const express = require('express');
const path = require('path');
const port = process.env.PORT || 8080;
const app = express();
app.use(express.static(__dirname + '/dist'));
app.get('/', (req, res) =>{
res.sendFile(path.resolve(__dirname, '/dist', 'index.html'))
});
app.listen(port);
console.log(`server started on ${port}`);
индекс. html файл раздела
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link href="https://fonts.googleapis.com/css?family=Nunito+Sans:400,600,700" rel="stylesheet">
<link rel="stylesheet" href="css/style.css">
<link rel="shortcut icon" href="img/favicon.png" type="image/x-icon">
<title>forkify // Search over 1,000,000 recipes</title>
</head>