TSLint — це інструмент валідації Typescrip{filter}t для виявлення коду.
TSLint: comment must start with a space (comment-format)
Коментарі мають починатися з пробілу (у форматі коментаря)
Тобто, // має слідувати пробілом.
"Відсутня крапка з комою." : "Відсутня крапка з комою." "Використати функціональну форму \"use strict\"." : "Визначити функцію за допомогою стандартизації.", "Несподіваний пробіл після '-'." : "Не повинно бути пробілу після '-'.", "Очікувано значення JSON." : "Будь ласка, вкажіть значення JSON." "Змішані пробіли та вкладки.": "Пробіли та вкладки повторюються.", "Небезпечний персонаж." : "Небезпечний характер." "Рядок занадто довгий.": "Символи в цьому рядку перевищують встановлену максимальну довжину.", "Задній пробіл.": "Занадто багато непотрібних місць у кінці цієї лінії.". "scrip{filter}t URL." : "script URL.", "Несподівано {a} у '{b}'." : "{a}.", "Несподіваний '{a}'." : "'{a}'.", "Струни мають використовувати подвійні лапки." "Непотрібний спуск." : "Спуск не потрібен." "Керуючий символ у рядку: {a}." : "Символ Control з'являється у рядку", "Уникайте \'." : "Уникайте \\", "Уникати \\v." : "Уникати \\v", "уникайте \\x-." : "уникати \\x-", "Поганий спуск." : "Неправильний персонаж для втечі", "Погане число '{a}'." : "Погане число '{a}'", "Відсутній пробіл після '{a}'." : "Відсутній пробіл після '{a}'", "Не використовуйте додаткові ведучі нулі '{a}'." : "Не використовуйте додаткові 0 перед '{a}'", "Уникайте 0x-. ' {a}'." : "Уникайте використання 0x-. ' {a}'.", "Кінцеву десяткову точку можна сплутати з крапкою '{a}'." : "Використовуйте крапку з кінцевою десятковою точкою в '{a}'", "Несподіваний коментар." : "Коментарі тут не повинні з'являтися", "Невтеклий '{a}'." : "Невтеклий '{a}'", "Несподіваний контрольний символ у регулярному вираженні." : "Контрольний символ з'явився у регулярному вираженні", "Несподівано втеклий символ '{a}' у регулярному вираженні." : "Несподівано втеклий символ '{a}' з'явився у регулярному виразі", "Очікував '{a}', а замість цього побачив '{b}'." : "Слід замінити '{b}' на '{a}'", "Пробіли важко порахувати. Використовуйте {{a}}.» : «Пробіли важко підрахувати, будь ласка, використовуйте {{a}}», "Невпевнений '{a}'." : "Невпевнений '{a}'", "Порожній клас." : "порожній клас", "Очікував число, а замість цього побачив '{a}'.":"Слід замінити на '{a}'", "'{a}' не повинна бути більшою за '{b}'." "'hasOwnProperty' — це дуже погане ім'я.": "'hasOwnProperty' — це ключове слово", "'{a}' було використано до того, як його визначили.": "'{a}' було використано до того, як воно було визначено.", "'{a}' вже визначено.":"'{a}' визначається багаторазово", "Крапку після числа можна сплутати з десятковою крапкою.": "Крапку, що слідує за числом, можна сплутати з десятковою крапкою", "Заплутані мінусів" : "заплутаний негативний вираз-", "Заплутані плюси." : "заплутаний позитивний вираз+", "Несумісний '{a}'." : "Несумісний '{a}'", "Очікувалося, що '{a}' збігається з '{b}' з рядка {c}, а замість цього бачив '{d}'.": "У рядку {c} необхідно співставити '{a}' і '{b}' замість '{d}'", "Несподіване раннє завершення програми.": "Несподіване раннє завершення програми", «Передню десяткову крапку можна сплутати з крапкою: '. {a}'.":"Крапку перед '{a}' легко сплутати з десятковою крапкою", "Використовуйте літеральну нотацію масиву [].": "Використовуйте символ масиву []", "Очікував оператора, а замість цього побачив '{a}'.":"Потрібно замінити '{a}' на символ", "Несподіваний пробіл після '{a}'.": "Після '{a}' немає пробілу", "Несподіваний простір перед '{a}'.": "Немає пробілу перед '{a}'", "Поганий розрив лінії перед '{a}'.": "Неправильний розрив лінії перед '{a}'", "Очікується, що '{a}' матиме відступ у {b} замість {c}.": "'{a}' має бути відступ у {c} замість {b}", "Помилка розриву рядка '{a}'.":"Помилка розриву рядка '{a}'", "Несподіване використання '{a}'.":"'{a}' тут не може бути використане", "Поганий операнд.": "Неправильний операнд", "Використовуйте функцію isNaN для порівняння з NaN.": "Використовуйте isNaN для порівняння з NaN", "Заплутане використання '{a}'.": "заплутане використання '{a}'", "Тільки для читання.": "Тільки для читання", "'{a}' — це функція.":"'{a}' — функція", 'Погане завдання.': 'Неправильне завдання', "Не призначати параметру винятку.": "Не призначати значення додатковим параметрам", "Очікував ідентифікатор у присвоєнні, а замість цього побачив виклик функції.": "У операторі призначення має бути ідентифікатор, а не виклик методу", "Очікував ідентифікатор, а замість цього побачив '{a}' (зарезервоване слово).":"Потрібен ідентифікатор замість '{a}' (зарезервованого слова)", "Відсутнє ім'я в декларації функції.": "Відсутнє ім'я в декларації методу", "Очікував ідентифікатор, а натомість побачив '{a}'.":"Потрібен ідентифікатор замість '{a}'", "Внутрішні функції мають бути вказані вгорі зовнішньої функції." , "Недосяжний '{a}' після '{b}'.":"Неможливо отримати '{a}' після '{b}'", "Зайва крапка з комою." "Позначити '{a}' на {b} операторі.": "Поставити '{a}' на оператор {b}", "Мітка '{a}' виглядає як javascrip{filter}t url.": "'{a}' виглядає як js-посилання", "Очікував призначення або виклик функції, а натомість побачив вираз": "Вимагає призначення або виклику функції замість виразу.", "Не використовуйте 'новий' для побічних ефектів.": "Не використовуйте 'нове' твердження.", "Непотрібно\"використовувати суворо".":"Непотрібно\"використовувати суворо".", "Відсутній \"use strict\" оператор.":"Відсутній \"use strict\" оператор", "Порожній блок.": "порожній модуль", "Несподіваний /*елемент '{a}'.":"Елемент /* '{a}'.", "'{a}' — це мітка твердження.": "'{a}' — це твердження", "'{a}' використовується поза межами сфери застосування.":"'{a}' використано поза межами сфери застосування", "'{a}' не дозволяється.":"'{a}'", "'{a}' не визначено.": "'{a}' не визначено", "Використовуйте '{a}' для порівняння з '{b}'.": "Використовуйте '{a}' для порівняння з '{b}'", "Змінні не слід видаляти.": "Змінні потрібно видаляти", "Використовуйте літеральну нотацію об'єкта {}.":"Використовуйте літеральну нотацію об'єкта {}", "Не використовуйте {a} як конструктор.": "Не використовуйте {a} як конструктор", "Конструктор функції є eval.":"Конструктор функції є eval.", "Ім'я конструктора має починатися з великої літери.": "Ім'я конструктора має починатися з великої літери.", "Поганий конструктор.": "Неправильний конструктор", "Дивна конструкція. Видалити 'новий'.": "Конструктор помиляється, будь ласка, видаліть 'новий'", "Відсутнє '()', що викликає конструктор.": "Відсутні дужки ()", "Уникай сварок. {a}.":"Уникайте параметра. {a}.", "document.write може бути формою оцінки.":"document.write — це форма оцінки", 'оцінка — це зло.': "Намагайся не використовувати оцінку", "Математика — це не функція.": "Математика не є функцією", "Відсутній префікс 'new' при виклику конструктора.": "'new' тут відсутній", "Відсутній параметр radix.": "Відсутній параметр", "Імпліцитна оцінка — це зло. Передайте функцію замість рядка.": "Передайте функцію замість рядка", "Погане закликання.": "Неправильне закликання", "['{a}'] краще писати у крапковій нотації.":"['{a}'] найкраще використовувати крапкою. way", "Додаткова кома.": "Додаткова кома", "Не створюйте функції в циклі.": "Не створюйте функції в циклі", "Несподіваний параметр '{a}' у функції get {b}.":"Параметр '{a}' не слід використовувати в методі {b}", "Дублікат члена '{a}'.":"Дублікат '{a}'", "Очікував побачити оператор, а замість цього побачив блок.": "Це має бути оператор заяви.", "Занадто багато var-заяв.": "Твердження з надто великою кількістю var", "Перевизначення '{a}'.":"'{a}' визначається неодноразово", "Не обов'язково ініціалізувати '{a}' на 'undefined'." "Очікував умовний вираз, а натомість побачив призначення.": "Тут потрібен вираз, а не оператор призначення", "Очікував заяви про 'перерву' перед 'справою'.", "Очікувано отримати оператор 'break' перед 'default.":" 'break' потрібен перед 'default'.", "Цей 'switch' має бути 'якщо'.", "Усі оператори 'debugger' слід видалити.": "Будь ласка, видаліть оператор 'debugger'", "'{a}' не є міткою твердження.", "Очікував призначення або виклик функції, а натомість побачив вираз.": "Потрібен оператор або виклик функції замість виразу", "Оголошення функцій не слід розміщувати блоками. Використовуйте вираз функції або перемістіть оператор у верхню частину зовнішньої функції.": "Оголошення функції не може бути розміщене в блоці, схожому на if, її потрібно розмістити поверх зовнішньої функції."
Ось кілька прикладів порад, з якими ви стикаєтеся у своєму проєкті:
1 [W099]: Змішані простори та вкладки
Ця помилка є найпоширенішою, тобто в одному рядку пробіли та відступи на вкладці змішані, і модифікація дуже проста — зазвичай видаляють відступ на вкладці і змінюють його на пробіл. Для зручності ми можемо встановити відступ вкладки редактора на 2 або 4 клітинки замість початкового.
2 [W030]: Очікував призначення або виклик функції, а замість цього побачив вираз
Ця помилка дуже дивна, я використовую наступний код, щоб запросити індекс помилки 1 <0 ? індекс = 0:індекс = індекс - 1; Це кома-вираз, але JSLInt вважає, що це не має бути вираз, а функція, тому якщо вас цікавить ця помилка, змініть її на оператор if else
3 [W041]:Використовуйте '===' для порівняння з ...
Ця помилка означає, що якщо використовувати конгруенцію замість рівних, якщо типи даних по обидва боки виразу однакові, рекомендується використовувати конгруенцію для оцінки
4 [W033]: Відсутня крапка з комою
відсутні крапки з комою; Зазвичай це забуваєш сам, але варто зазначити, що для структур з одним реченням крапки з комою також потрібно писати пізніше. Наприклад: if(index<0) {index=tcount-1} правильно записується якби (index<0) {index=tcount-1; }, я часто забуваю писати тут крапки з комою, спітнів...
Є також деякі підказки про помилки, тож давайте змінимо їх відповідно і виробимо власний хороший стиль коду та звички написання.
|