1. 程式人生 > 其它 >Angular中怎樣建立service服務來實現元件之間呼叫公共方法

Angular中怎樣建立service服務來實現元件之間呼叫公共方法

Angular元件之間不能互相呼叫方法,但是可以通過建立服務來實現公共方法的呼叫。

實現

建立服務命令

ng g service 服務路徑/服務名

比如這裡在app/services目錄下建立storage服務

ng g service services/storage

在app.module.ts中引入建立的服務

在applmodule.ts中引入建立的服務

import {StorageService} from './services/storage.service';

並在MgModule裡面的providers裡面依賴注入服務

在使用的頁面引入服務並註冊服務

這裡在search這個元件中呼叫服務的方法,所以開啟search這個元件的ts

import {StorageService} from '../../services/storage.service';

並在構造方法中註冊服務

constructor(private storage:StorageService) { }

注意這裡呼叫的路徑,service服務與元件的位置關係如下

這裡註冊服務時在構造方法中private storage:StorageService,storage名字自己隨意起,後面的StorageService要與上面引入時

相對應。

呼叫服務的方法

上面在要呼叫服務方法的ts中使用private storage:StorageService註冊服務後可以直接通過

this.storage.get();

呼叫其中的方法。

get()方法需要提前在service中提前宣告

為了測試方法的呼叫,在search這個元件的ngInit方法中呼叫

  ngOnInit(): void {
    this.storage.get();
  }