Documentation Pages
Quick Tip #002—Inline Minified JavaScript
- Related: Quick Tip #001—Inline Minified CSS
Installation #
npm install uglify-js to make the Uglify JS minifier available in your project.
Configuration #
Add the following jsmin filter to your Eleventy Config file:
const UglifyJS = require("uglify-js");eleventyConfig.addFilter("jsmin", function(code) { let minified = UglifyJS.minify(code); if( minified.error ) { console.log("UglifyJS error: ", minified.error); return code; } return minified.code;});
Create your JavaScript File #
Add a sample JavaScript file to your _includes directory. Let’s call it sample.js.
// Hiconsole.log("Hi");
Capture and Minify #
Capture the JavaScript into a variable and run it through the filter (this sample is using Nunjucks syntax)
<!-- capture the JS content as a Nunjucks variable -->{% set js %}{% include "sample.js" %}{% endset %}<!-- feed it through our jsmin filter to minify --><style>{{ js | jsmin | safe }}</style>
Originally posted on The Simplest Web Site That Could Possible Work Well on zachleat.com
All Quick Tips
- Quick Tip
#001—Inline Minified CSS - Quick Tip
#003—Add Edit on GitHub Links to All Pages