Круто, спасибо за эту ссылку и курсив. Хотел бы я отметить два ответа как правильные сейчас!
я есть некоторые сервисы Angular, которые имеют идентичные методы для анализа ответа json, обработки ошибок и т. Д. (Например, перехват, например, если это ошибка 422).
Очевидно, что я не хочу, чтобы эти методы копировались и вставлялись в каждый сервис, но я не могу найти какое-либо руководство по поводу того, где я должен поместить этот код.
Они не являются методами класса, просто в настоящее время идентичные частные методы в каждой службе.
Вот один, например:
private parseToString(jsonResponse: any){
return Object.keys(jsonResponse).reduce(
(prev, next) => prev.concat(jsonResponse[next].map(
v => next + ' ' + v).join(', ')), []).join(', ');
}
Есть ли способ создать вспомогательный модуль или что-то вроде Rails Concern, который вы можете включить?
Скажем, например, у меня есть эта папка:
приложение / услуги
который имеет мои различные файлы службы .ts.
Я мог бы создать папку «app / services / helpers» и поместить в нее файл ... но что входит в этот файл .ts?
например. parser-helper.ts может быть именем файла, но как выглядит код внутри? Это должен быть модуль? Если так, как я могу включить это в сервис?
Например, это рекомендуемый способ сделать это?
приложение / услуги / хелперы / парсер-helper.module.ts
module parserHelperModule {
export function helperA(){}
export function helperB(){}
}