Angular 在我的例子中,如何将服务注入模块?
我正在尝试将一个旧的angular 1.5服务注入angular 1.5/4混合应用程序中的angular 4模块Angular 在我的例子中,如何将服务注入模块?,angular,typescript,angular-services,angular-module,Angular,Typescript,Angular Services,Angular Module,我正在尝试将一个旧的angular 1.5服务注入angular 1.5/4混合应用程序中的angular 4模块 MyService使用一个静态方法,因为如果我将其公开,我就无法使用它来初始化 newmyservice()因为MyService需要一个我不知道如何提供的参数 我的类(我的service.class.ts) 我的模块 import { CommonModule } from '@angular/common'; import { NgModule } from '@angular
MyService
使用一个静态方法,因为如果我将其公开,我就无法使用它来初始化
newmyservice()
因为MyService
需要一个我不知道如何提供的参数
我的类(我的service.class.ts)
我的模块
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
...other import..
import MyService from './my-service.class';
console.log(MyService.getMyUrl())
//has error because getMyUrl has error.
@NgModule({
'imports': [
CommonModule
],
'declarations': [
MyComponent
],
'providers': [
MyService
]
})
export class MyModule {}
基本上,我不知道如何将我的旧服务转换成静态方法。有什么帮助吗?非常感谢 如果只需要在加载模块时运行代码。将该代码放在模块的构造函数中 您必须将您的服务注入
MyModule
export class MyModule {
constructor(MyService service) {
console.log(service.getMyUrl());
}
}
您还必须从服务中删除static
。不要对可注入服务使用静态方法
export class MyModule {
constructor(MyService service) {
console.log(service.getMyUrl());
}
}