visual studio code - Kako riješiti sukobljena pravila lintanja u VSCode između eslint i typescript-eslint

Moja pravila za eslint su sljedeća

module.exports = { env: { es6: true, node: true, mocha: true }, extends: [ "standard-with-typescript" ], parser: '@typescript-eslint/parser', globals: { Atomics: 'readonly', SharedArrayBuffer: 'readonly' }, parserOptions: { ecmaVersion: 2018, sourceType: 'module', project: "./tsconfig.json" }, rules: { "quotes": ["warn", "single"], "indent": ["warn", "tab", { "ignoreComments": true

Čitaj više →

ESLint razmak za TypeScript try/catch blok

U TypeScriptu imam:

try { } catch(err) { }

blokovi i catch blokovi bez argumenta:

try { } catch { }

U ESLint pravilima imam (uređeni izvadak iz eslint.yaml):

space-before-function-paren: [error, {anonymous: never, named: never, asyncArrow: always}] space-before-blocks: warn keyword-spacing: [warn, {before: true, after: false, overrides: {catch: {after: true}}}]

S ovim pravilima, ESLint se žali na prvi tr

Čitaj više →

typescript - problem s Eslint-om kod nullish coalescinga kombiniranog s opcionalnim chainingom

Recimo da imamo ova tri izraza provjerena od strane eslint-a:

const exp1 = a ?? b; // ok const exp2 = a?.b // ok const exp3 = a?.b ?? c // Parsing error: ':' expected.

Sve radi i uspješno se kompajlira s TypeScriptom, ali posljednji izraz baca eslint pogrešku Parsing error: ':' expected. Čini se da postoji problem s kombinacijom Nullish coalescing i optional chaining. Postoji li netko tko se susreo s ovim problemom?

package.json

Čitaj više →

typescript - Stalno dobivam ESLint "definirano, ali se nikada ne koristi. (no-unused-vars)" kad je definirano

Koristim WebStorm IDE za svoj TypeScript projekt s omogućenim ESLint i Prettier. Dobivam upozorenje:

za ovaj kod:

import { ToastAndroid } from 'react-native'; import { TProjectsList, IProject } from '../types'; export const reduceRecursively = (data:

Čitaj više →

reactjs - Eslint pravilo za provjeru Pascal case-a u imenima React komponenti (samo za .tsx ekstenziju)

Pokušavam koristiti Eslint kako bih nametnuo PascalCase na svojim React komponentama. Pogledao sam sve postojeće dodatke/pravila koje sam mogao pronaći, i evo mojih problema:

Koristim Typescript (.tsx ekstenzije), pa mi react/jsx-pascal-case neće raditi. Za datoteke koje nisu komponente, želim dopustiti kebab-case, pa bih htio filtrirati samo datoteke s .tsx ekstenzijom.

TL;DR - Volio bih imati Eslint pravilo koje primjenjuje PascalCase, ali samo na datotekama koj

Čitaj više →

typescript - Eslint dodatak za provjeru tijela teksta

Skolon sam slučajno hardkodirati neke nizove poput imena aplikacije u porukama o pogreškama. Ime imam dostupno u const, ali zaboravim koristiti const i napišem ime aplikacije u JSX elementu ili TypeScript stringu. Projekt koristi ESLint za provjeru koda. Ima li ESLint neku pravilo ili dodatak za provjeru sadržaja JSX elemenata i TypeScript stringova za zabranjene riječi/rečenice?

Čitaj više →

typescript - Eslint --max-warnings na Tslint

Pokušavam dodati lint-staged pravilo poput eslint --max-warnings=0, ali koristeći tslint. Dakle, pitanje je je li to moguće i ako jest, kako? Ništa korisno na njihovoj službenoj stranici dokumentacije.

Čitaj više →

reactjs - ESLint ne predlaže potrebne pretplatnike useEffect (CRA + TS + ESLint + Prettier)

Kad sam pokušao napraviti prilagođeni hook, suočio sam se s nekim problemom. ESLint mi nije predložio pretplatnike za useEffect. (fetch nije bio predložen i popunio sam ga ručno) Također sam pokušao eslint-plugin-react-hooks, ali niti to ne radi.

useEffect(() => { fetch(); }, [fetch]);

Isti problem za useCallback

puni kod prilagođenog hooka

import { useState, useEffect, useCallback } from "react"; import { server } from "./server"; in

Čitaj više →

node.js - TypeScript lagana skriptna podrška s ESLint i Prettier

TypeScript/ESLint/Prettier postali su moji omiljeni alati za sve vrste zadataka. Međutim, još uvijek se mučim sa malim Nodejs-skriptnama koje imaju samo nekoliko desetaka redaka koda. Za pisanje male Nodejs-skripte uz udobno iskustvo u IDE-u, trebam:

  • Napravite package.json
  • Konfiguriraj tsconfig (stroga kompilacija)
  • Konfiguriraj ESLint
  • Konfiguriraj Prettier
  • Prevedi u JavaScript ako mi je stalo do performansi pri pokretanju (pogledaj dolje)

Čitaj više →

javascript - Kako stvoriti Mixin u Angular11 s ESLint-om

U mojim Angular9 i Angular10 projektima uspio sam stvoriti mixins koristeći dolje navedene korake iz bloga Harnessing the power of Mixins in Angular

constructor.mixin.ts

export type Constructor<T = {}> = new (...args: any[]) => T;

my-mixin.mixin.ts

import {Constructor} from './constructor.mixin'; import {BehaviorSubject} from 'rxjs'; export const myMixin

Čitaj više →