Skip to content

Instantly share code, notes, and snippets.

@michsch
Last active October 7, 2020 13:18
Show Gist options
  • Save michsch/9ba3d1d3348294bf65e1d813876c8915 to your computer and use it in GitHub Desktop.
Save michsch/9ba3d1d3348294bf65e1d813876c8915 to your computer and use it in GitHub Desktop.
Nunjucks with custom filter for number_format
"paths": {
"nunjucks": "../Vendor/nunjucks/dist/js/nunjucks"
},
"map": {
"*": {
"nunjucks": "Service/Factory/nunjucksFactory/nunjucksFactory"
},
"Service/Factory/nunjucksFactory/nunjucksFactory" : {
"nunjucks" : "nunjucks"
}
}
define(['nunjucks', 'nunjucksEnv'], function (nunjucks, nunjucksEnv) {
'use strict';
var numberFormat;
numberFormat = function (value, decimalNumbers, decimalSeparator, thousandSeparator) {
var newNumberAsString;
if (value == null || typeof value !== 'number' isNaN(value)) {
value = 0;
}
newNumberAsString = value.toFixed(decimalNumbers).toString();
if (decimalSeparator != null) {
newNumberAsString = newNumberAsString.replace(/\./g, decimalSeparator);
}
if (thousandSeperator != null) {
newNumberAsString = newNumberAsString.replace(/\B(?=(\d{3})+(?!\d))/g, thousandSeparator);
}
return newNumberAsString;
};
nunjucks.configure({ autoescape: true });
nunjucksEnv.addFilter('number_format', numberFormat);
return nunjucks;
});
<span itemprop="price" content="{{ price | number_format(2, '.') }}">
{{ price | number_format(2, ',', '.') }}
</span>
Copy link

ghost commented Sep 14, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment