当前位置: 首页 > news >正文

兰州网站建设网站建设百度助手官网

兰州网站建设网站建设,百度助手官网,wordpress博客页面显示文章在哪,网站开发采购合同模板下载在Angular中有很多方式可以将服务类注册到注入器中: Injectable 元数据中的providedIn属性 NgModule 元数据中的 providers属性 Component 元数据中的 providers属性 创建一个文件名叫名 hero.service.ts叫 hero 的服务 hero.service.ts import { Injectable } from angular…

在Angular中有很多方式可以将服务类注册到注入器中:

@Injectable 元数据中的providedIn属性
@NgModule 元数据中的 providers属性
@Component 元数据中的 providers属性
创建一个文件名叫名 hero.service.ts叫 hero 的服务
 hero.service.ts

import { Injectable } from '@angular/core';@Injectable({providedIn: 'root',
})
export class HeroService {constructor() { }// 新增加setName方法setName(name:string):string{return `姓名:${name}`;}}


1.@Injectable 元数据中的providedIn属性

providedIn: 'root' 告诉 Angular在根注入器中注册这个服务,这也是使用CLI生成服务时默认的方式.
这种方式注册,不需要再@NgModule装饰器中写providers,而且在代码编译打包时,可以执行摇树优化,会移除所有没在应用中使用过的服务。推荐使用此种方式注册服务

使用providedIn的话,后面直接在项目中使用了。

使用:heroes.component.ts

import { Component, OnInit } from '@angular/core';
import { HeroService } from '../hero.service'@Component({selector: 'app-heroes',templateUrl: './heroes.component.html',styleUrls: ['./heroes.component.css']
})
export class HeroesComponent implements OnInit {constructor(private heroService:HeroService) { }ngOnInit() {this.heroService.setName('张三');}
}


2.@NgModule 元数据中的 providers属性

改写 hero.service.ts里面的@Injectable,如下

import { Injectable } from '@angular/core';@Injectable() // 删掉了 {providedIn: 'root'}
export class HeroService {...}


 xx.module.ts , 例如app.module.ts

...@NgModule({providers: [HeroService,// { provide: HeroService, useValue: HeroService }],
})...


然后就可以在使用拉,使用方法,同1 heroes.component.ts文件

3.@Component 元数据中的 providers属性

 hero.service.ts里面的@Injectable,删掉 {providedIn: 'root'},同2 hero.service.ts文件

改写heroes.component.ts

import { Component, OnInit } from '@angular/core';
import { HeroService } from '../hero.service'@Component({selector: 'app-heroes',templateUrl: './heroes.component.html',styleUrls: ['./heroes.component.css'],providers: [HeroService] // 新增 providers: [HeroService]
})
export class HeroesComponent implements OnInit {constructor(private heroService:HeroService) { }ngOnInit() {this.heroService.setName('张三');}
}


 

三种用法总结:

@Injectable 元数据中的providedIn属性  

//service.ts
@Injectable({providedIn:'root'})//component.ts
constructor(private heroService:HeroService) { }


@NgModule 元数据中的 providers属性

// service.ts
@Injectable() //module.ts
@NgModule({providers: [HeroService ]
})


@Component 元数据中的 providers属性

// service.ts
@Injectable() // component.ts
@Component({...selector: 'app-heroes',providers: [ HeroService ]
})


原文链接:https://blog.csdn.net/sllailcp/article/details/102548144

http://www.yayakq.cn/news/954129/

相关文章:

  • 建设部科研申报网站用着不好怎样做网站流量统计
  • php学校网站模板江苏省住房和建设厅网站
  • 如何创建自己的网站平台免费建设网站 容量
  • 网站收缩引擎入口深圳建网站的公
  • .vip域名做网站东莞中堂网站建设
  • 做设计需要知道的几个网站吗怎么用网页源码做网站
  • 优秀网站展示自学考试 网页制作与网站建设06627
  • 网站开发文件上传到服务器专注做蔬菜的网站
  • 内网网站开发当富广州网站建设
  • 外贸专业网站建设世界500强企业的标准是什么
  • 爱站网的关键词是怎么来的戴尔的网站建设有哪些主要特色
  • 六安哪家做网站好刚刚发生 北京严重发生
  • 网站添加js广告位网站变app
  • 深圳企业集团网站建设重庆塔吊证查询网站
  • 最简单的网站代码个人网站怎么做游戏
  • 照片做视频的软件 模板下载网站h5网站开发费用
  • 阜阳h5网站建设公司网站怎么看被百度收录
  • 做最好的在线中文绅士本子阅读网站手机报价网站大全
  • 产品摄影网站推荐农业开发公司好名字
  • 邵阳公司网站建设开发云app
  • 图片设计网站有哪些小说排行榜2020前十名
  • 慈利县建设局网站网站项目建设合同
  • 网站历史记录怎么恢复wordpress后台界面模板
  • 做网站 参考文献上海微信网站建设
  • delphi网站开发教程重庆网站建设入门培训
  • 工作室网站源码php医疗网站模板
  • 广州服装 网站建设网上书城网站建设总结
  • 关于插画的网站摄影网站开发的意义
  • 公司建设网站申请报告百度竞价开户3000
  • 网站免费域名申请大的互联网公司