亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Angular 4.x+Ionic3踩坑之Ionic3.x pop反向傳值詳解

 更新時間:2018年03月13日 09:46:58   作者:前端小智  
這篇文章主要給大家介紹了關(guān)于Angular 4.x+Ionic3踩坑之Ionic3.x pop反向傳值的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

1.Ionic3.x 頁面正向傳值

關(guān)于正向傳值,上一篇文章里面有講,具體可以看這里:http://chabaoo.cn/article/136302.htm

2.Ionic3.x 頁面 pop反向傳值,主要有兩種方式

     1 .利用ES6提供 Promise 對象

     2 利用Ionic3.x提供Event對象,觀察者模式(publish/subscribe)

1)利用ES6提供 Promise 對象

這邊假設(shè)有兩個頁面A頁面, B頁面, 情景如下,A跳轉(zhuǎn)B頁面,在B頁面返回A頁面需要給A頁面選回的值。

A頁面代碼

html內(nèi)容

<button (tap)="goToBPage()">跳轉(zhuǎn)到B頁面</button>

ts 內(nèi)容:

import BPage from './BPage'
export class APage{
constructor(public navCtrl: NavController, public navParams: NavParams) {
}
// 用于pop 回調(diào)的 block
callBackFromB =(params) => {
 return new Promise((resolve, reject) => {
 if(params){
  resolve('成功取到B頁面返回的參數(shù)');
  console.log('B頁面參數(shù)為: '+ params);
 }else{
  reject(‘取回B頁面數(shù)據(jù)失敗')
 }
 });
 }
 goToBPage (){
 this.navCtrl.push(BPage, {
 callback: this.callBackFromB
 })
 }
}

備注:Promise是由Es6提供的一個對象,new一個對象,有兩個回調(diào)函數(shù),一個是resove,一個是reject,resove是執(zhí)行成功的回調(diào),也就是我們調(diào)用 then執(zhí)行的方法, reject是執(zhí)行失敗的回調(diào),對應(yīng) 是調(diào)用 catch方法 ,現(xiàn)在es7新出一async和await,async是對Promise的進一步封裝,詳情可具體看官方文檔!

B頁面代碼

ts 內(nèi)容:

constructor(public navCtrl: NavController, public navParams: NavParams) {
// 獲取對面A傳過來的回調(diào)方法
 this.callback = this.navParams.get("callback")
 
}
 goBack(){
 let param = '我是要給A頁面數(shù)據(jù)'
 this.callback(param).then(()=>{
 // pop返回方法
 this.navCtrl.pop();
 });
 }

1)利用Ionic3.x提供Event對象,觀察者模式(publish/subscribe)

event對象主要有3個方法

1.發(fā)布publish(topic, eventData)

`參數(shù)一是發(fā)布事件名字,第二個參數(shù)就是要發(fā)送數(shù)據(jù),其實還可以傳送第三,第四...等,都 是可以傳送數(shù)據(jù)的

2.訂閱 subscribe(topic, handler)

參數(shù)一是要接收的事件鋁管,第二個參數(shù)代表發(fā)布時傳送的參數(shù),如果發(fā)布有傳第三個參數(shù),同樣的訂閱的第三個參數(shù)就是對應(yīng)的發(fā)布的第三個參數(shù),以此類推....`

3.取消訂閱 unsubscribe(topic, handler)

參數(shù)一是要取消訂閱的事件的名稱,第二是一個回調(diào)函數(shù),返回值:如果被移除成功,返回true
實現(xiàn)反向傳值代碼如下

A頁面代碼

ts代碼

 goToBPage(){
 this.events.subscribe('bevents', (params) => {
  // 接收B頁面發(fā)布的數(shù)據(jù)
  console.log('接收數(shù)據(jù)為: '+ paramsVar);

  // 取消訂閱
  this.events.unsubscribe('bevents'); 
 })
 this.navCtrl.push(BPage);
 }

B頁面代碼

ts代碼

goBack(){
 this.navCtrl.pop().then(() => {
 // 發(fā)布 bevents事件
 this.events.publish('bevents', '我是B頁面數(shù)據(jù)');
 });
}

總結(jié)

以上主要介紹反向傳值的2種方法,當(dāng)然還有其它方法,如果你有更好 的方法,歡迎留言討論,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • AngularJS動態(tài)綁定HTML的方法分析

    AngularJS動態(tài)綁定HTML的方法分析

    這篇文章主要介紹了AngularJS動態(tài)綁定HTML的方法,結(jié)合實例形式分析了AngularJS實現(xiàn)動態(tài)綁定HTML的相關(guān)操作指令用法與使用注意事項,需要的朋友可以參考下
    2016-11-11
  • Angular.js如何從PHP讀取后臺數(shù)據(jù)

    Angular.js如何從PHP讀取后臺數(shù)據(jù)

    這篇文章主要為大家簡單介紹了Angular.js如何從PHP讀取后臺數(shù)據(jù),本文將Angular和PHP相結(jié)合,從后臺讀取數(shù)據(jù),感興趣的小伙伴們可以參考一下
    2016-03-03
  • 使用Angular Cli如何創(chuàng)建Angular私有庫詳解

    使用Angular Cli如何創(chuàng)建Angular私有庫詳解

    這篇文章主要給大家介紹了關(guān)于使用Angular Cli如何創(chuàng)建Angular私有庫的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • Angular企業(yè)級開發(fā)——MVC之控制器詳解

    Angular企業(yè)級開發(fā)——MVC之控制器詳解

    本篇文章主要介紹了Angular企業(yè)級開發(fā)——MVC之控制器詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • 詳解angular element()方法使用

    詳解angular element()方法使用

    本篇文章主要介紹了詳解angular element()方法使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • angularJs中ng-model-options設(shè)置數(shù)據(jù)同步的方法

    angularJs中ng-model-options設(shè)置數(shù)據(jù)同步的方法

    今天小編就為大家分享一篇angularJs中ng-model-options設(shè)置數(shù)據(jù)同步的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • Angular8引入百度Echarts進行圖表分析的實現(xiàn)代碼

    Angular8引入百度Echarts進行圖表分析的實現(xiàn)代碼

    這篇文章主要介紹了Angular8引入百度Echarts進行圖表分析的實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • AngularJS入門知識之MVW類框架的編程思想探討

    AngularJS入門知識之MVW類框架的編程思想探討

    這篇文章主要介紹了AngularJS入門知識之MVW類框架的編程思想探討,本文通過實現(xiàn)兩個簡單的業(yè)務(wù)需求,探討AngularJS和傳統(tǒng)的JavaScript控制DOM實現(xiàn)方式的差別,并嘗試理解MVW此類框架在流行的Web前端開發(fā)中的編程思想,需要的朋友可以參考下
    2014-12-12
  • AngularJS實現(xiàn)根據(jù)變量改變動態(tài)加載模板的方法

    AngularJS實現(xiàn)根據(jù)變量改變動態(tài)加載模板的方法

    這篇文章主要介紹了AngularJS實現(xiàn)根據(jù)變量改變動態(tài)加載模板的方法,結(jié)合實例形式簡單分析了AngularJS動態(tài)加載模板的主要操作技巧與模板實現(xiàn)代碼,需要的朋友可以參考下
    2016-11-11
  • Angular移動端頁面input無法輸入的解決方法

    Angular移動端頁面input無法輸入的解決方法

    下面小編就為大家?guī)硪黄狝ngular移動端頁面input無法輸入的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11

最新評論