Skip to content

Commit fc53cde

Browse files
committed
ADD: Handle subfolders with Webpack
1 parent ebd5be2 commit fc53cde

File tree

3 files changed

+32
-5
lines changed

3 files changed

+32
-5
lines changed

build/utils.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,21 @@
1-
exports.pages = function(env) {
1+
exports.pages = function (env, folder = '') {
2+
const rootPagesFolderName = 'pages'
23
const HtmlWebpackPlugin = require('html-webpack-plugin')
34
const fs = require('fs')
45
const path = require('path')
5-
const viewsFolder = path.resolve(__dirname, '../src/views/pages')
6+
const viewsFolder = path.resolve(__dirname, `../src/views/${rootPagesFolderName}/${folder}`)
67

78
var pages = []
89

910
fs.readdirSync(viewsFolder).forEach(view => {
10-
const viewName = view.split('.')[0];
11+
if (view.split('.')[1] === undefined)
12+
return false;
1113

14+
const viewName = view.split('.')[0];
15+
const fileName = folder === '' ? `${viewName}/index.html` : `${folder}/${viewName}/index.html`;
1216
const options = {
13-
filename: `${viewName}/index.html`,
14-
template: `views/pages/${view}`,
17+
filename: fileName,
18+
template: `views/${rootPagesFolderName}/${folder}/${view}`,
1519
inject: true
1620
};
1721

build/webpack.config.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ module.exports = env => {
139139
}),
140140

141141
...utils.pages(env),
142+
...utils.pages(env, 'blog'),
142143

143144
new webpack.ProvidePlugin({
144145
$: 'jquery',
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
extends ../../layouts/master.pug
2+
3+
block title
4+
title My Page - Blog post
5+
6+
block basicSeo
7+
meta(name='description' content='Blog postpage')
8+
meta(name='keywords', content='blog, page, post')
9+
meta(name='author' content='')
10+
11+
block manifestBrowserconfigFiles
12+
link(href='../manifest.json', rel='manifest')
13+
meta(name='msapplication-config' content='../browserconfig.xml')
14+
15+
block scripts
16+
script(src='../config/games.json')
17+
18+
block content
19+
20+
//- Desktop page
21+
section.page.blogpost__page
22+
h1.page__title # Blog post page

0 commit comments

Comments
 (0)