UNPKG

cache-busted

Version:

A simplistic cache buster that appends the current version for production environments and the current time otherwise (great for development)

50 lines (35 loc) 1.41 kB
# cache-bust Use cache busting in express. Adds a version query string to ressources. ## Usage with express ```js var express = require('express'); var cacheBust = require('cache-busted'); var app = express(); cacheBust.handler(app); ``` This exposes the function cacheBust in your app locals. Enabling you to do the following (example using jade): ```jade head title Hello World != cacheBust('/public/js/app.js') != cacheBust('/public/css/style.css') != cacheBust('/public/css/style', 'css') ``` Output: ```html <head> <title>Hello World</title> <script type="text/js" src="/public/js/app.js?v=1.0.0" /> <link rel="stylesheet" href="/public/css/style.css?v=1.0.0" /> <link rel="stylesheet" href="/public/css/style.css?v=1.0.0" /> </head> ``` ## Options Add the options to the `handler` call: `cacheBust.handler(app, options)` `version`: Use this exact version. Default: null which will make this module look for a package.json in the folder below `packageLocation`: Path to the `package.json`. Defaults to `../../package.json`. ## Difference production and development The above example is the output if the NODE_ENV environment variable is set to `production` or `integration`. Otherwise it also appends the current timestamp so that each request will load all new dependencies. Example: ```html <link rel="stylesheet" href="/public/css/style.css?v=1.0.0-1432576223502" /> ```