如何在 class in ionic 中使用 provider
How to use provider in class in ionic
我创建了一个 class(不是组件),我希望它使用来自提供商 (MyService) 的数据。例如:
export class MyClass {
arg1 : Number;
constructor(arg : Number, private myService : MyService) {
this.arg1 = arg;
}
calc() {
console.log(this.arg + this.myService.arg2);
}
}
现在,我想创建这个 class 的新实例:
let a : MyClass = new MyClass(7);
但我缺少 1 个参数...
如何创建具有提供者的 class 实例?可能吗?还是我没用好?
假设您在某个组件中调用 MyClass:MyComponent。
在那个组件中,你有注入服务 MyService 的构造函数,在构造函数中或任何你想用参数初始化 MyClass 的地方,例如:
@Component({})
export class MyComponent{
constructor(public myService: MyService){
let a: MyClass = new MyClass(7, this.myService);
}
}
或者如果你想在构造函数之外调用它:
@Component({})
export class MyComponent{
let a: MyClass;
constructor(public myService: MyService){
this.a = new MyClass(7, this.myService);
}
someMethod(): void {
this.a.calc();
}
}
而且,在您的 class 中,将变量分配给传递的参数 myService:
export class MyClass {
arg1 : Number;
myService: MyService;
constructor(arg : Number, private myService : MyService) {
this.arg1 = arg;
this.myService = myService;
}
您必须在构造函数中提供对服务的引用。
假设您正在尝试在另一个 class 中创建您的 class 的实例,
所以你必须定义这样的东西。
你的原创class
export class MyClass {
arg1 : Number;
myservice: MyService;
constructor(arg : Number, private myService : MyService) {
this.arg1 = arg;
this.myservice = myService;
}
calc() {
console.log(this.arg + this.myService.arg2);
}
}
Class 您正在其中创建新实例
export class AnotherClass {
constructor(public myService: Myservice){
let a : MyClass = new MyClass(7,myService);
}
}
现在您可以像这样使用引用了 -
a.calc()
我创建了一个 class(不是组件),我希望它使用来自提供商 (MyService) 的数据。例如:
export class MyClass {
arg1 : Number;
constructor(arg : Number, private myService : MyService) {
this.arg1 = arg;
}
calc() {
console.log(this.arg + this.myService.arg2);
}
}
现在,我想创建这个 class 的新实例:
let a : MyClass = new MyClass(7);
但我缺少 1 个参数... 如何创建具有提供者的 class 实例?可能吗?还是我没用好?
假设您在某个组件中调用 MyClass:MyComponent。
在那个组件中,你有注入服务 MyService 的构造函数,在构造函数中或任何你想用参数初始化 MyClass 的地方,例如:
@Component({})
export class MyComponent{
constructor(public myService: MyService){
let a: MyClass = new MyClass(7, this.myService);
}
}
或者如果你想在构造函数之外调用它:
@Component({})
export class MyComponent{
let a: MyClass;
constructor(public myService: MyService){
this.a = new MyClass(7, this.myService);
}
someMethod(): void {
this.a.calc();
}
}
而且,在您的 class 中,将变量分配给传递的参数 myService:
export class MyClass {
arg1 : Number;
myService: MyService;
constructor(arg : Number, private myService : MyService) {
this.arg1 = arg;
this.myService = myService;
}
您必须在构造函数中提供对服务的引用。
假设您正在尝试在另一个 class 中创建您的 class 的实例, 所以你必须定义这样的东西。
你的原创class
export class MyClass {
arg1 : Number;
myservice: MyService;
constructor(arg : Number, private myService : MyService) {
this.arg1 = arg;
this.myservice = myService;
}
calc() {
console.log(this.arg + this.myService.arg2);
}
}
Class 您正在其中创建新实例
export class AnotherClass {
constructor(public myService: Myservice){
let a : MyClass = new MyClass(7,myService);
}
}
现在您可以像这样使用引用了 -
a.calc()