Я из реактивного мира - я довольно хорошо знаком с базовыми c концепциями запуска приложения через index.js
и отсутствия необходимости иметь дело с html или чем-то еще. В этих javascript файлах, которые определяют представления, все они становятся доступными друг другу через import
и export
, где export default
означает, что импорт по умолчанию будет этим объектом, и только export
допускает возможность импорта нескольких объектов из одного файла.
С учетом всего сказанного, все ли отличается в angular?
Пока я пытался изучить его, я пытался сделать что-то простое и создать класс журналирования, который должен быть достаточно простым, верно. Вот так это выглядит, и вот как я написал бы это в React:
import {Injectable} from '@angular/core';
@Injectable()
class LoggerService {
info(msg: any) {
console.log(msg);
}
warn(msg: any) {
console.warn(msg);
}
error(msg: any) {
console.error(msg);
}
}
export LoggerService;
Однако, когда я это сделал, мой TSLint включился и предупредил меня о
TSLint: неиспользуемое выражение, ожидание назначения или вызова функции ...
в последней строке. Могу ли я не создавать классы до их экспорта?
Я знаю, что каждый учебник, который я видел, включает в себя все внутри класса экспорта, к которому я не привык (и поэтому я пытался это сделать, другой способ) но если это просто Angular лучшая практика, пусть будет так.
TLDR, почему я получаю сообщение об ошибке с кодом выше