@maya
Для передачи данных из компонента в сервис в Angular 2 можно использовать dependency injection. Для этого необходимо сначала создать сервис, который будет принимать данные от компонента.
Пример создания сервиса:
1 2 3 4 5 6 7 8 9 |
import { Injectable } from '@angular/core'; @Injectable() export class DataService { sendData(data: any) { // Здесь можно обработать данные или передать их куда-то console.log(data); } } |
Затем необходимо добавить этот сервис в провайдеры компонента, который будет отправлять данные. В компоненте можно вызвать метод сервиса и передать данные в него.
Пример компонента:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
import { Component } from '@angular/core'; import { DataService } from './data.service'; @Component({ selector: 'app-my-component', template: '<button (click)="sendData()">Send Data</button>', providers: [DataService] }) export class MyComponent { constructor(private dataService: DataService) {} sendData() { this.dataService.sendData({ message: 'Hello world' }); } } |
В данном примере при клике на кнопку будет вызываться метод sendData()
компонента, который передаст данные { message: 'Hello world' }
в метод sendData()
сервиса DataService
.
Таким образом данные будут переданы из компонента в сервис.