Вы можете сделать следующее: создать новый файл e js с именем functions.ejs
:
<script>
function test(){console.log(1)}
</script>
, а затем использовать <%- include('functions'); %>
внутри шаблона, который вы визуализируете. Используйте его в начале, чтобы функция определялась при ее вызове.
В соответствующем маршруте используйте:
res.render('default/index', {
...,
name: 'test'
});
Внутри вашего шаблона можно делать следующее:
<button onclick="<%=name%>()"> <%= btnText %> </button>
НО, когда я смотрю на функцию, которую вы хотите передать, я вижу, что вы хотите изменить состояние своего приложения, используя currPage = currPage + 1;
. Это не сработает, так как как только страница будет отрисована, в html больше нет ссылки на currPage
, потому что к тому времени все будет c html.
Если вы хотите сменить страницы et c. вам нужно будет реализовать некоторые логики внешнего интерфейса c.