服务可以理解为公共的方法,项目里面需要用到的公共方法都可以抽离为一个公共的方法使用
服务类的定义通常紧跟在 “@Injectable()” 装饰器之后,依赖不一定是服务 —— 它还可能是函数或值。也就是说函数或值不需要@Injectable()装饰器
创建service的指令 ng generate service heroes/hero
下面给几个服务案例
1、公共函数或值,目录:app->core->services->utils->app-common.function.ts
export function getRole():string { return sessionStorage.getItem('erp_role'); }
2、公共服务,目录:app->core->services->services->dialog.service.ts
import { Injectable } from '@angular/core'; import { MatDialogRef, MatDialog } from '@angular/material'; import { MatConfirmDialogComponent } from 'src/app/shared/mat-confirm-dialog/mat-confirm-dialog.component'; @Injectable({ providedIn: 'root' }) export class DialogService { constructor(private dialog: MatDialog) { } openConfirmDialog(msg, height){ console.log("message: " + msg + " height: " + height); return this.dialog.open(MatConfirmDialogComponent,{ width: '390px', panelClass: 'confirm-dialog-container', disableClose: true, position: { top: height+"px" }, data :{ message : msg } }); } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。