Repository navigation
Приложение для терминала - #2
Conversation
| } | ||
|
|
||
|
|
||
| function isPackageJson(value: unknown): value is PackageJsonData { |
There was a problem hiding this comment.
А почему эта функция вне класса ?
| @@ -0,0 +1,46 @@ | |||
| import { FileReader } from './file-reader.interface.js'; | |||
| import { readFileSync } from 'node:fs'; | |||
| import { RentalOffer } from '../types/rental-offer.interface.js'; | |||
There was a problem hiding this comment.
Полезно знать, такие штуки которые импортируются только в качестве типа лучше импортировать через import type чтобы в JS файле не были лишнего импорта это может помочь предотвратить лишние циклические зависимости
There was a problem hiding this comment.
verbatimModuleSyntax по дефолту не включен
| } | ||
|
|
||
| private readVersion(): string { | ||
| const json = readFileSync(resolve(this.filepath), 'utf-8'); |
There was a problem hiding this comment.
Тоже полезно знать, что функции файловой системы которые *Sync блокируют выполнение потока, то есть использовать их нужно аккуратно и тогда когда ты действительно понимаешь что это не затормозит какие то паралельные процессы.
There was a problem hiding this comment.
да, спасибо, тут по примеру из лекции просто синхронную функцию вызвал
🎓 Приложение для терминала