zoukankan      html  css  js  c++  java
  • [Angular 2] Share a Service Across Angular 2 Components and Modules

    Services are used to share data between components. They follow a module pattern that allows you to use the data throughout your application so that your data is consistent and in sync.

    Create a service.module.ts:

    import { NgModule} from '@angular/core';
    import {SimpleService} from './simple.service';
    
    @NgModule({
    })
    export class ServicesModule {
        static forRoot(){
            return {
                ngModule: ServicesModule,
                providers: [SimpleService]
            }
        }
    }
    
    export {
        SimpleService
    }

    Simple.serivce.ts:

    import { Injectable } from '@angular/core';
    
    @Injectable()
    export class SimpleService {
    
        message = "Hello";
    
        constructor() { }
    
    }

    app.module.ts:

    import { NgModule} from "@angular/core";
    import {BrowserModule} from "@angular/platform-browser";
    import {AppComponent} from './app.component';
    import {HomeModule} from './components/home/home.module';
    import {WidgetsModule} from './components/widgets/widgets.module';
    import {ServicesModule} from './serivces/service.module';
    
    @NgModule({
        imports:[BrowserModule, HomeModule, WidgetsModule, ServicesModule.forRoot()],
        declarations:[AppComponent],
        bootstrap:[AppComponent]
    })
    export class AppModule{}

    Use the SimpleService:

    import { Component, OnInit } from '@angular/core';
    import {SimpleService} from '../../serivces/service.module';
    
    @Component({
        moduleId: module.id,
        selector: 'home',
        templateUrl: 'home.component.html'
    })
    export class HomeComponent implements OnInit {
    
        constructor(private simpleService: SimpleService) {
            console.log("message:", simpleService.message);
        }
    
        ngOnInit() { }
    
    }
  • 相关阅读:
    HDU 2201 熊猫阿波问题==金刚坐飞机问题
    HDU 2100 (模拟进制加法)
    HDU 2151 Worm
    qsort快速排序
    HDU 1007 (最近点对+qsort对结构体的排序!!!)
    HDU 1348 wall (简单凸包)
    HDU 1392 Surround the Trees(凸包模板)
    HDU 1431素数回文
    HDU 2108 Shape of HDU(判断拐点)
    HDU 2857 Mirror and Light(镜面反射模板)
  • 原文地址:https://www.cnblogs.com/Answer1215/p/5889998.html
Copyright © 2011-2022 走看看