Как называется правило TsLint для разрыва лямбда-выражения стрелка? - PullRequest
1 голос
/ 01 февраля 2020

Я использовал синтаксис со сломанной стрелкой, как это.

const result = data.map( _ 
  => this.reallyLongExpressionSoBreakingArrowMakesSense(_));

Затем я заметил, что TsLint пометил место и дал мне следующую информацию.

Терминатор строки не разрешен перед стрелкой. (ts1200)

Я не нашел ничего подобного в моем tslint. json, поэтому я пошел к документам , чтобы посмотреть, что фактическое имя Насколько я понимаю, этому сообщению ничего не соответствует.

  1. Какое правило TsLint соответствует сообщению?
  2. В чем смысл ts1200 в скобках после сообщения?

Ответы [ 2 ]

2 голосов
/ 01 февраля 2020
  1. Похоже, что для этого не существует правила tslint, только ESLint .
  2. ts1200 код ошибки. Проверьте это здесь . Проверьте оригинал pr здесь .
1 голос
/ 01 февраля 2020

Как сообщают авторы , это поведение не исправлено:

Я думаю, что вряд ли кто-то использует этот синтаксис, поскольку его гораздо сложнее читать, но если он ломается приложения, то это, возможно, не стоит исправлять.

Кроме того :

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

ОБНОВЛЕНИЕ:

Попробуйте сделать их _ => в одной строке, но вызов вашего метода на следующей строке:

const result = data.map( _ => 
    this.reallyLongExpressionSoBreakingArrowMakesSense(_));
...