在Angular中,可以在模块范围内创建私有服务。以下是一个示例:
private.service.ts
:import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root' // 或者指定为特定模块,如providedIn: 'my-module'
})
export class PrivateService {
private data: string;
constructor() {
this.data = '私有数据';
}
getData(): string {
return this.data;
}
}
PrivateService
:import { NgModule } from '@angular/core';
import { PrivateService } from './private.service';
@NgModule({
providers: [PrivateService]
})
export class MyModule { }
PrivateService
:import { Component } from '@angular/core';
import { PrivateService } from './private.service';
@Component({
selector: 'app-my-component',
template: `
{{ data }}
`
})
export class MyComponent {
data: string;
constructor(private privateService: PrivateService) {
this.data = privateService.getData();
}
}
通过这种方式,PrivateService
将成为模块范围内的私有服务,并且只能在同一模块内的组件中注入和使用。