Альтернатива функции жирной стрелки для прекомпиляции - PullRequest
2 голосов
/ 16 октября 2019

У меня есть некоторый javascript, написанный для маски ввода в rails 4. Маска ввода отлично работает на стороне разработки, но не удается выполнить предварительную компиляцию на сервере со следующей ошибкой:

ExecJS::RuntimeError: SyntaxError: Unexpected token: operator (>) (line: 6, col: 33, pos: 222)

Я пытался переформатировать функцию несколькими способами, но только жирная стрелка =>, кажется, позволяет моей маске ввода работать.

const mask = originalTemplate => (function() {
    let template = originalTemplate;
    const input = $(this).val().replace(/[^0-9]/g, '');
    for (let x = 0, end = input.length, asc = 0 <= end; asc ? x < end : x > end; asc ? x++ : x--) {
      template = template.replace('x', input[x]);
    }
    if (input.length === 0) { template = ''; }
    let index = template.indexOf('x');
    while ((index > 0) && !(numbers.indexOf(template[index-1]) >= 0)) {
      index = index - 1;
    }
    if (index < 0) { index = template.length; }
    return $(this).val(template.substring(0, index));
  });

Есть ли способ написать это, который выполнит то же самоевещь, но без использования =>?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...