Как SweetAlert2 ссылается на переменную в своем объявлении в JavaScript? - PullRequest
0 голосов
/ 15 июня 2019

Я один из тех людей, которым нужно знать, как работает код, прежде чем я его использую, и сейчас я пытаюсь понять, насколько определенный паттерн SweetAlert2 даже функционален.

В моем текущем проекте есть немного существующего кода TypeScript, который выглядит примерно так:

 async showGetCloseReasonSwal(orderNumber) {
    var reason = await Swal.fire({
      title: "Order Closing Confirmation",
      html: `Please provide a reason for closing #<mark>${orderNumber}</mark>:`,
      input: "text",
      inputValue: reason,
      confirmButtonText: "Close Order",
      showCancelButton: true,
      cancelButtonText: "Do Not Close",
      preConfirm: reason => {
        if (reason == "" || reason == null) {
          Swal.showValidationMessage("Reason required");
        } else return reason;
      }
    });
    return reason;
  }

Это работает, но я очень озадачен тем, как reason может использоваться в значении параметра функции, которая сама устанавливает переменную reason. Это TypeScript? Преобразователь автоматически преобразует это в два оператора? Каждое другое упражнение для проверки концепции, которое я сделал, терпит неудачу.

...