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 写类方式之四
Jul 05 Javascript
javascript Array.remove() 数组删除
Aug 06 Javascript
javascript qq右下角滑出窗口 sheyMsg
Mar 21 Javascript
用js实现输入提示(自动完成)的实例代码
Jun 14 Javascript
解决json日期格式问题的3种方法
Feb 02 Javascript
JSON与XML优缺点对比分析
Jul 17 Javascript
js中获取 table节点各tr及td的内容简单实例
Oct 14 Javascript
最细致的vue.js基础语法 值得收藏!
Nov 03 Javascript
javascript数组去重常用方法实例分析
Apr 11 Javascript
使用 Javascript 实现浏览器推送提醒功能的示例
Nov 03 Javascript
JS实现非首屏图片延迟加载的示例
Jan 06 Javascript
vue+iview动态渲染表格详解
Mar 19 Javascript
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的数组与字符串的转换函数整理汇总
2013/07/18 PHP
PHP变量的定义、可变变量、变量引用、销毁方法
2013/12/20 PHP
php实现在线生成条形码示例分享(条形码生成器)
2013/12/30 PHP
ThinkPHP中的系统常量和预定义常量集合
2014/07/01 PHP
PHP计算百度地图两个GPS坐标之间距离的方法
2015/01/09 PHP
PHP判断是否为空的几个函数对比
2015/04/21 PHP
Jquery Ajax的Get方式时需要注意URL地方
2011/04/07 Javascript
jQuery中读取json文件示例代码
2013/05/10 Javascript
cookie 最近浏览记录(中文escape转码)具体实现
2013/06/08 Javascript
seajs加载jquery时提示$ is not a function该怎么解决
2015/10/23 Javascript
jQuery实现带水平滑杆的焦点图动画插件
2016/03/08 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
2016/04/08 Javascript
jQuery EasyUI编辑DataGrid用combobox实现多级联动
2016/08/29 Javascript
VUE使用vuex解决模块间传值问题的方法
2017/06/01 Javascript
Angular.js中$resource高大上的数据交互详解
2017/07/30 Javascript
jQuery简单实现的HTML页面文本框模糊匹配查询功能完整示例
2018/05/09 jQuery
微信小程序自定义组件实现tabs选项卡功能
2018/07/14 Javascript
解决js相同的正则多次调用test()返回的值却不同的问题
2018/10/10 Javascript
Vue2.x Todo之自定义指令实现自动聚焦的方法
2019/01/08 Javascript
在vue项目中引入highcharts图表的方法
2019/01/21 Javascript
详解滑动穿透(锁body)终极探索
2019/04/16 Javascript
在LayUI图片上传中,解决由跨域问题引起的请求接口错误的方法
2019/09/24 Javascript
Vue 根据条件判断van-tab的显示方式
2020/08/03 Javascript
Python中flatten( )函数及函数用法详解
2018/11/02 Python
Python实现随机取一个矩阵数组的某几行
2019/11/26 Python
一款纯css3实现的非常实用的鼠标悬停特效演示
2014/11/05 HTML / CSS
关于HTML5语义标签的实践(blog页面)
2016/07/12 HTML / CSS
小天鹅官方商城:LittleSwan
2017/06/16 全球购物
linux面试题参考答案(5)
2014/09/01 面试题
优秀学生自我鉴定范例
2013/12/18 职场文书
数控技校生自我鉴定
2014/03/02 职场文书
学习朴航瑛老师爱岗敬业先进事迹思想汇报
2014/09/17 职场文书
党政领导班子群众路线对照检查材料
2014/10/26 职场文书
导游词之云南-元阳梯田
2019/10/08 职场文书
教你用python控制安卓手机
2021/05/13 Python
Python selenium绕过webdriver监测执行javascript
2022/04/12 Python