Я хочу создать функцию для усов, с необязательными параметрами.Но, как я вижу, функции с параметрами и без параметров объявляются и используются по-разному, смешивать их невозможно:
Просмотр:
const view = {
fParameter: function () {
return function (val, render) {
return 'fParameter: ' + render(val || 'no val')
}
},
fNoParameter: function () {
return 'fNoParameter'
}
}
Функция с параметрами, установленными параметрами, работает:
console.log(Mustache.render('{{#fParameter}}someValue{{/fParameter}}', view))
Функция без параметров, параметр не установлен работает:
console.log(Mustache.render('{{fNoParameter}}', view))
Функция с параметрами, параметр не установлен не работает должным образом:
console.log(Mustache.render('{{fParameter}}', view))
Отображает объявление функции, а не значение по умолчанию:
function (val, render) {
return 'fParameter: ' + render(val || 'no val')
}
Можно ли это сделать с усами?