我有一些Angular 2服务具有相同的方法来解析json响应,处理错误等(例如,如果它是422错误陷阱例如)。Angular2 - 模块分离 - 最佳实践
很显然,我不希望这些方法复制并粘贴到每个服务中,但我似乎无法找到有关我应该在哪里放置此代码的任何指导。
他们不是类方法,只是目前在每个服务中相同的私有方法。
这里有一个例子:
private parseToString(jsonResponse: any){
return Object.keys(jsonResponse).reduce(
(prev, next) => prev.concat(jsonResponse[next].map(
v => next + ' ' + v).join(', ')), []).join(', ');
}
是否有某种方式来创建一个辅助模块或像一个Rails值得关注的是,你可以包括些什么呢?
例如说我有这个文件夹:
应用程序/服务
其中有我的各种.TS服务文件。
我可以创建“应用程序/服务/助手”文件夹,并把文件放在里面...但是那个.ts文件会怎么样?
例如。 parser-helper.ts可以是文件名,但是里面的代码是什么样的?它应该是一个模块吗?如果是这样,我怎样才能将其纳入服务?
例如,这是推荐的方式吗?
应用程序/服务/助理/解析器helper.module.ts
module parserHelperModule {
export function helperA(){}
export function helperB(){}
}
那么TypeScript有函数,类,方法等。你可以自由地创建一个函数,从模块中导出它,然后导入它并在任何你想要的地方使用它。 –
我添加了一些示例代码,我认为您的意思是我尝试。 – rmcsharry