CoffeeScript для NodeJS - PullRequest
       9

CoffeeScript для NodeJS

0 голосов
/ 20 июня 2019

В настоящее время я пытаюсь перенести старый код CoffeeScript поверх (старый проект) на собственный NodeJS;Я изо всех сил пытаюсь понять, что именно это делает?или эквивалент в Node?

  builder.macro_extensions = [
      'iced'
      'nsi'
      'txt'
  ]

  await exec """
    find #{temp} | grep #{(_.map @macro_extensions, (x) -> "-e '\\.#{x}'").join ' '}
  """, {silent:on}, defer e,r
  if e then return cb e

Если бы кто-нибудь мог указать мне правильное направление, это было бы прекрасно!

1 Ответ

1 голос
/ 20 июня 2019

Предполагая, что exec возвращает обещание, код передает 2 аргумента функции exec, ожидает выполнения возвращенного обещания и устанавливает переменную r в разрешенное значение.

Если что-то идет не так (т. Е. Обещание отклоняется), в переменной e указывается причина отклонения этого обещания.

JS-эквивалент этого кода будет:

builder.macro_extensions = ['iced', 'nsi', 'txt'];

const grepArgs = _.map(
  this.macro_extensions, // or maybe builder.macro_extensions
  x => ` -e '\\.${x}'`,
).join(''); // -e '\.iced' -e '\.nsi' -e '\.txt'

let r;
try {
  r = await exec(`find ${temp} | grep ${grepArgs}`, {silent: on});
} catch (e) {
  return cb(e);
}

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