simple html layout loader for webpack
npm install html-layout-loader
node > 6.0
- First, you need a layout html, like this:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Pure Web</title>
<meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no">
</head>
<body>
<header>This is Header</header>
<!-- the place of the content will be inserted, you can change the placeholder in loader options-->
{{__content__}}
<footer>This is footer</header>
</body>
</html>
-
Second, you have two way to use the layout
A. import layout template in html file, and add loader
<!-- file path can't include quotes --> @layout(../../htmls/layout.html) <div class="main"> main content </div>
{ test: /\.(html)$/, loader: 'html-layout-loader' },
B. setting default layout in loader options, so you don't do any thing in html
<div class="main"> main content </div>
{ test: /\.(html)$/, loader: 'html-layout-loader', include: htmlPath, // the htmls you want inject to layout options: { layout: layoutHtmlPath // the path of default layout html } }
there is others options
placeholder
: the placeholder of inserted place of layout,default:{{__content__}}
decorator
: the layout syntax, default:layout
.