微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

6、angular服务

服务可以理解为公共的方法,项目里面需要用到的公共方法都可以抽离为一个公共的方法使用

服务类的定义通常紧跟在 “@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] 举报,一经查实,本站将立刻删除。

相关推荐