搜尋
首頁web前端js教程angular4多個元件相互數據通信

這次帶給大家angular4多個組件相互數據通信,angular4多個組件相互數據通信的注意事項有哪些,下面就是實戰案例,一起來看一下。

應用場景,不同組件中操作統一組數據,不論哪個組件對數據進行了操作,其他組件中立馬看到效果。這樣他們就要共用一個服務實例,是本次的重點,如果不同實例,那麼操作的就不是同一組數據,那麼就不會有這樣的效果,想實現共用服務實例,就是在所有父組件中priviates :[]中引入這個元件,子元件中不需要再次引入,那麼他們都是用的父元件中的服務實例。

1、公用服務

import {Injectable} from "@angular/core";
@Injectable()
export class CommonService {
 public dateList: any = [
 {
  name: "张旭超",
  age: 20,
  address: "北京市朝阳区"
 }
 ];
 constructor() {
 }
 addDateFun(data) {
 this.dateList.push(data);
 }
}

2、parent.component.ts

import {Component, OnInit} from "@angular/core";
import {CommonService} from "./common.service";
// 这里要通过父子公用服务来操作数据,只需要在父组件中引入服务。
@Component({
 selector: "parent-tag",
 templateUrl: "parent.component.html",
 providers: [
 CommonService
 ]
})
export class ParentComponent implements OnInit {
 public list: any = [];
 constructor(private commonService: CommonService) {
 this.list = commonService.dateList;
 }
 ngOnInit() {
 }
}

3、parent.component.html



 
 
 
 
 
  {{item.name}}     {{item.age}}     {{item.address}}  

4、child-one .component.ts

import {Component} from "@angular/core";
import {CommonService} from "./common.service";
@Component({
 selector: "child-one-tag",
 templateUrl: "child-one.component.html"
})
export class ChildOneComponent {
 public display: boolean = false;
 public username: string = "";
 public age: number = 20;
 public address: string = "";
 constructor(public commonService: CommonService) {
 }
 showDialog() {
 this.display = true;
 }
 hideDialog() {
 this.display = false;
 }
 addInfoFun() {
 let params = {
  name: this.username,
  age: this.age,
  address: this.address
 };
 this.commonService.addDateFun(params);
 params = {};
 }
}

5、child-one.component.html

<p-dialog>
 <form>
 <p>姓名:<input></p>
 <p>年龄:<input></p>
 <p>地址:<input></p>
 <button></button>
 <button></button>
 </form>
</p-dialog>
<button></button>

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

jQuery可見性篩選器使用案例詳解

使用jQuery內容過濾器方法詳解

以上是angular4多個元件相互數據通信的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何利用PHP与TCP/IP协议进行数据通信如何利用PHP与TCP/IP协议进行数据通信Jul 29, 2023 pm 01:46 PM

如何利用PHP与TCP/IP协议进行数据通信引言:在现代互联网时代,数据通信是非常重要的一个方面。无论是客户端与服务器之间的通信,还是不同服务器之间的通信,TCP/IP协议一直是最常用的通信协议之一。本文将介绍如何利用PHP语言与TCP/IP协议进行数据通信,并提供相关的代码示例。一、TCP/IP协议简介TCP/IP协议是Internet协议簇的基础,它定义

如何使用Python中的socket编程进行数据通信如何使用Python中的socket编程进行数据通信Oct 18, 2023 am 11:06 AM

标题:Python中的socket编程及代码示例引言:在现代互联网时代,数据通信无处不在。而Python中的socket编程提供了一种简单而有效的方式来实现网络上的数据传输。本文将介绍如何使用Python的socket模块来进行数据通信,并提供具体的代码示例,帮助读者更好地理解和应用socket编程。一、什么是socket编程?Socket,即套接字,是实现

如何使用Python中的socket编程进行不同机器间的数据通信和协同计算如何使用Python中的socket编程进行不同机器间的数据通信和协同计算Oct 21, 2023 am 11:38 AM

标题:使用Python中的socket编程实现机器间的数据通信和协同计算引言:在计算机领域,不同机器之间的数据通信和协同计算是实现分布式系统和并行计算的关键技术之一。Python中的socket编程是一种常用且强大的网络编程工具,它可以用于实现机器间的数据传输和通信。本文将介绍如何使用Python中的socket编程实现不同机器之间的数据通信以及协同计算,并

Redis实现跨语言数据通信详解Redis实现跨语言数据通信详解Jun 20, 2023 pm 06:19 PM

Redis作为一款高速且高效的内存数据库,已经被广泛应用于各个领域。除了在单语言环境下的数据存储和读取外,Redis还可以实现跨语言的数据通信。这种跨语言的数据通信能够大大提升系统的互操作性。本文将详细介绍如何使用Redis实现跨语言数据通信。一、Redis基础概念回顾Redis是一个基于内存的键值数据库,支持多种数据结构。在Redis中,每个数据都是以"k

数据通信的三种方式是什么数据通信的三种方式是什么Jan 02, 2021 pm 04:26 PM

数据通信的三种方式:1、单工通信,只支持数据在一个方向上传输;2、半双工通信,允许数据在两个方向上传输,但在同一时刻,只允许数据在一个方向上传输;3、全双工通信,允许数据同时在两个方向上传输,即通信的双方可以同时发送和接收数据。

PHP开发中的实用技术——利用API接口实现数据的实时通信和事件触发。PHP开发中的实用技术——利用API接口实现数据的实时通信和事件触发。Sep 05, 2023 pm 01:19 PM

PHP开发中的实用技术——利用API接口实现数据的实时通信和事件触发引言:随着互联网的迅猛发展,越来越多的网站或应用需要实现数据的实时通信和事件触发,以满足用户对即时性的需求。在PHP开发中,我们可以利用API接口来实现这些功能。本文将介绍如何使用API接口来实现数据的实时通信和事件触发,并附上代码示例。一、什么是API接口?API(Application

PHP和swoole如何实现高效的数据通信和同步?PHP和swoole如何实现高效的数据通信和同步?Jul 21, 2023 pm 10:57 PM

PHP和swoole如何实现高效的数据通信和同步?在Web开发中,数据通信和同步是非常重要的一环。PHP是一种广泛使用的脚本语言,而swoole则是一个高性能的PHP扩展,可以提供异步的、多线程的、多进程的等高级特性,从而大大提升了PHP的性能和效率。本文将介绍如何利用PHP和swoole来实现高效的数据通信和同步。一、swoole入门在使用swoole之前

如何使用PHP和SOAP在不同的系统之间进行数据通信如何使用PHP和SOAP在不同的系统之间进行数据通信Jul 28, 2023 am 11:21 AM

如何使用PHP和SOAP在不同的系统之间进行数据通信在当今互联网时代,不同系统之间的数据交换和通信变得越来越重要。PHP作为一种广泛应用的服务器端脚本语言,通过使用SOAP(简单对象访问协议)可以使不同系统之间的数据通信变得更加简单高效。本文将介绍如何使用PHP和SOAP来实现不同系统之间的数据通信,并提供相应的代码示例。一、什么是SOAPSOAP是一种基于

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。