Angular6使用forRoot() 注册单一实例服务问题


Posted in Javascript onAugust 27, 2019

假如我们有一个shareModule来存放公用的组件(Component)、指令(Directive)、管道(Pipe)、服务(Service),为避免各个子模块引用shareModule时造成App中有多个一样的单一实例服务的问题。我们可以在shareModule中建立同意的App层级的服务。

ShareModule
import { NgModule, ModuleWithProviders } from '@angular/core';
@NgModule({
  imports: [
    HttpModule,
    JsonpModule,
    ...
  ],
  declarations: [
    ShowItDirective,
    ...
  ],
  exports: [
    ShowItDirective,
    ...
  ]
})
export class ShareModule{
  // 给shareModule添加forRoot
  static forRoot(): ModuleWithProviders {
    return {
      ngModule: ShareModule,
      providers: [
        MessageService,
        NotifyService,
        ... any service
      ],
    };
  }
}
AppModule
@NgModule({
 declarations: [
  AppComponent,
 ],
 imports: [
  // 使用
  ShareModule.forRoot(),
 ],
 providers: [
  
 ],
 bootstrap: [AppComponent]
})
export class AppModule { }

这样ShareModule中每一个service都只在app中注册了一个实例,也避免了每次使用service都要provider的问题。

ERROR NullInjectorError: StaticInjectorError(AppModule)[SurveyComponent -> PermissionCheckerService]:
NullInjectorError: No provider for PermissionCheckerService!

总结

以上所述是小编给大家介绍的Angular6使用forRoot() 注册单一实例服务问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
javascript入门基础之私有变量
Feb 23 Javascript
jquery ajax abort()的使用方法
Oct 28 Javascript
JavaScript实现N皇后问题算法谜题解答
Dec 29 Javascript
JavaScript中的Math.SQRT1_2属性使用简介
Jun 14 Javascript
jQuery实现的简洁下拉菜单导航效果代码
Aug 26 Javascript
JavaScript学习小结(7)之JS RegExp
Nov 29 Javascript
JS图片压缩(pc端和移动端都适用)
Jan 12 Javascript
ES6教程之for循环和Map,Set用法分析
Apr 10 Javascript
js实现上传并压缩图片效果
Jan 10 Javascript
JS运动特效之同时运动实现方法分析
Jan 24 Javascript
微信小程序使用 vant Dialog组件的正确方式
Feb 21 Javascript
详解vite+ts快速搭建vue3项目以及介绍相关特性
Feb 25 Vue.js
jQuery - AJAX load() 实例用法详解
Aug 27 #jQuery
JS实现提示框跟随鼠标移动
Aug 27 #Javascript
js对象数组和对象的使用实例详解
Aug 27 #Javascript
vue递归组件实战之简单树形控件实例代码
Aug 27 #Javascript
vue项目中引入Sass实例方法
Aug 27 #Javascript
package.json配置文件构成详解
Aug 27 #Javascript
axios如何利用promise无痛刷新token的实现方法
Aug 27 #Javascript
You might like
使用PHP批量生成随机用户名
2008/07/10 PHP
PHP的拦截器实例分析
2014/11/03 PHP
PHP图片处理之图片背景、画布操作
2014/11/19 PHP
addRule在firefox下的兼容写法
2006/11/30 Javascript
利用js跨页面保存变量做菜单的方法
2008/01/17 Javascript
jQuery的实现原理的模拟代码 -1 核心部分
2010/08/01 Javascript
在网站上应该用的30个jQuery插件整理
2011/11/03 Javascript
到处都是jQuery选择器的年代 不了解它们的性能,行吗
2012/06/18 Javascript
JS防止用户多次提交的简单代码
2013/08/01 Javascript
用js的for循环获取radio选中的值
2013/10/21 Javascript
详谈javascript中DOM的基本属性
2015/02/26 Javascript
vue事件修饰符和按键修饰符用法总结
2017/07/25 Javascript
angular中实现li或者某个元素点击变色的两种方法
2017/07/27 Javascript
Javascript实现购物车功能的详细代码
2018/05/08 Javascript
详解element-ui表格中勾选checkbox,高亮当前行
2019/09/02 Javascript
微信小程序停止其他视频播放当前视频的实例代码
2019/12/25 Javascript
Vue 嵌套路由使用总结(推荐)
2020/01/13 Javascript
[02:08]2018年度CS GO枪械皮肤设计大赛优秀作者-完美盛典
2018/12/16 DOTA
[45:34]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.18
2020/12/19 DOTA
Python实现通讯录功能
2018/02/22 Python
解决Spyder中图片显示太小的问题
2018/04/27 Python
python3 requests中使用ip代理池随机生成ip的实例
2018/05/07 Python
python爬虫简单的添加代理进行访问的实现代码
2019/04/04 Python
Python字符串函数strip()原理及用法详解
2020/07/23 Python
CSS3 border-radius圆角的实现方法及用法详解
2020/09/14 HTML / CSS
基于MUI框架使用HTML5实现的二维码扫描功能
2018/03/01 HTML / CSS
KARATOV珠宝在线商店:俄罗斯珠宝品牌
2019/03/13 全球购物
俄罗斯在线购买飞机票、火车票、巴士票网站:Tutu.ru
2020/03/16 全球购物
数据库基础的一些面试题
2012/02/25 面试题
大二法英学生职业生涯规划范文
2014/02/27 职场文书
人力资源作业细则
2014/03/03 职场文书
劳动竞赛活动总结
2014/05/05 职场文书
酒店开业庆典策划方案
2014/05/28 职场文书
让世界充满爱观后感
2015/06/10 职场文书
禁毒主题班会教案
2015/08/14 职场文书
Jsonp劫持学习
2021/04/01 PHP