html-bricks-plugin-ejs v0.1.1
html-bricks-plugin-ejs
Embedded javascript support for html-bricks using ejs.
Requirements
html-bricks
>= 0.6.
Installation
Install using npm
npm install --save-dev html-bricks-plugin-ejs
Then include the plugin in your config
{
"plugins": [
"plugin-ejs"
]
}
You can point to a json file in your project directory to make its content available within your html files.
{
"plugins": [
{
"resolve": "plugin-ejs",
"options": {
"content": "path/to/your/json/file.json"
}
}
]
}
If you place the content file within your src
directory (which you might do to enable file watching), you should ignore the file to prevent including it in your build folder.
{
"ignoreFiles": [
"glob/pattern/that/matches/your/file"
]
}
Similarly, you can implement functions that are available at compile time. Just export them from a js file that you place in your project (default path is project/ejs.functions.js
).
Example:
ejs.functions.js
module.exports = {
sayHi: function (name) {
name + ' says hi!'
}
}
index.html
<p><%= sayHi('Bob') %></p>
The path to your functions file can be set the same way as the content file, using the key functions
. The file should be a js file!
{
"resolve": "plugin-ejs",
"options": {
"functions": "path/to/your/functions/file.js"
}
}
Usage
After installation, you can use ejs syntax within any HTML file (including modules). EJS includes are not tested and might not work.
Example
src/content.json
{
"header": {
"title": "My cool header"
}
}
src/index.html
<body>
<%= header.title %>
</body>