lab5 finished
This commit is contained in:
@@ -1,2 +0,0 @@
|
|||||||
h2= 'Hello World!'
|
|
||||||
img(src= require("../images/img1.jpg"))
|
|
||||||
1
labs/lab5/.gitignore
vendored
Normal file
1
labs/lab5/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
node_modules
|
||||||
6695
labs/lab5/package-lock.json
generated
Normal file
6695
labs/lab5/package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
30
labs/lab5/package.json
Normal file
30
labs/lab5/package.json
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"name": "template_pug",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "",
|
||||||
|
"main": "index.js",
|
||||||
|
"scripts": {
|
||||||
|
"build": "webpack --mode production",
|
||||||
|
"serve": "webpack serve --open --mode development",
|
||||||
|
"dev": "webpack --mode development",
|
||||||
|
"test": "echo \"Error: no test specified\" && exit 1"
|
||||||
|
},
|
||||||
|
"keywords": [],
|
||||||
|
"author": "",
|
||||||
|
"license": "ISC",
|
||||||
|
"devDependencies": {
|
||||||
|
"chokidar": "^4.0.3",
|
||||||
|
"css-loader": "^6.8.1",
|
||||||
|
"filemanager-webpack-plugin": "^8.0.0",
|
||||||
|
"glob": "^11.0.3",
|
||||||
|
"html-webpack-plugin": "^5.5.3",
|
||||||
|
"pug": "^2.0.4",
|
||||||
|
"pug-loader": "^2.4.0",
|
||||||
|
"style-loader": "^3.3.3",
|
||||||
|
"stylus": "^0.61.0",
|
||||||
|
"stylus-loader": "^7.1.3",
|
||||||
|
"webpack": "^5.89.0",
|
||||||
|
"webpack-cli": "^5.1.4",
|
||||||
|
"webpack-dev-server": "^4.15.1"
|
||||||
|
}
|
||||||
|
}
|
||||||
1
labs/lab5/src/index.js
Normal file
1
labs/lab5/src/index.js
Normal file
@@ -0,0 +1 @@
|
|||||||
|
import './styles/main.styl'
|
||||||
5
labs/lab5/src/pages/index.pug
Normal file
5
labs/lab5/src/pages/index.pug
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
head
|
||||||
|
title Lab 5
|
||||||
|
body
|
||||||
|
p.first-green-letter Текст Текст
|
||||||
|
p.first-green-letter Второй параграф
|
||||||
7
labs/lab5/src/styles/main.styl
Normal file
7
labs/lab5/src/styles/main.styl
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
text(size, color)
|
||||||
|
&:first-letter
|
||||||
|
font-size size
|
||||||
|
color color
|
||||||
|
|
||||||
|
.first-green-letter
|
||||||
|
text(2em,green)
|
||||||
69
labs/lab5/webpack.config.js
Normal file
69
labs/lab5/webpack.config.js
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
const HtmlWebpackPlugin = require("html-webpack-plugin");
|
||||||
|
const FileManagerPlugin = require("filemanager-webpack-plugin");
|
||||||
|
const path = require("path");
|
||||||
|
const fs = require("fs");
|
||||||
|
|
||||||
|
const pagesDir = path.join(__dirname, "src", "pages");
|
||||||
|
const pages = fs.readdirSync(pagesDir).filter(file => file.endsWith(".pug"));
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
output: {
|
||||||
|
path: path.join(__dirname, "dist"),
|
||||||
|
filename: "index.[contenthash].js",
|
||||||
|
assetModuleFilename: path.join("images", "[name].[contenthash][ext]"),
|
||||||
|
},
|
||||||
|
entry: path.join(__dirname, "src", "index.js"),
|
||||||
|
module: {
|
||||||
|
rules: [
|
||||||
|
{
|
||||||
|
test: /\.pug$/,
|
||||||
|
loader: "pug-loader",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
test: /\.(png|jpg|jpeg|gif)$/i,
|
||||||
|
type: "asset/resource",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
test: /\.svg$/,
|
||||||
|
type: "asset/resource",
|
||||||
|
generator: {
|
||||||
|
filename: path.join("icons", "[name].[contenthash][ext]"),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
test: /\.styl$/,
|
||||||
|
use: [
|
||||||
|
{
|
||||||
|
loader: "style-loader",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
loader: "css-loader",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
loader: "stylus-loader",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
plugins: [
|
||||||
|
...pages.map(
|
||||||
|
(page) =>
|
||||||
|
new HtmlWebpackPlugin({
|
||||||
|
template: path.join(pagesDir, page),
|
||||||
|
filename: page.replace(".pug", ".html"),
|
||||||
|
})
|
||||||
|
),
|
||||||
|
new FileManagerPlugin({
|
||||||
|
events: {
|
||||||
|
onStart: {
|
||||||
|
delete: ["dist"],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
],
|
||||||
|
devServer: {
|
||||||
|
watchFiles: path.join(__dirname, "src"),
|
||||||
|
port: 9000,
|
||||||
|
},
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user