2016-04-04 13 views
3

benim app Branch.io entegre çalışıyorum gerekli ve bu hata mesajını alıyorum: "Yakalanmayan ReferenceError: DeepLinkHandler tanımlanmadı" Branch.io İyonik entegrasyon/Evrensel İşlev tanımı

Burada onların talimatları takip : bunu da yapacağım belli yılında https://dev.branch.io/getting-started/sdk-integration-guide/guide/cordova/#start-a-branch-session

: ve onların SDK ekledi "O zaman oturum varlıklar derin bağlantı verileri burada yer alacaktır zaman bizim geri arama görevi görecek yöntemi DeepLinkHandler ekleyin:."

function DeepLinkHandler(data) { 
    alert('Data from initSession: ' + data.data); 
} 

Ne yaptığım EXACTLY.

Onların desteği ile konuştum ve bu işlevi küresel olarak tanımlamamız gerektiği sonucuna vardık, bu yüzden onu her yerden aramak mümkün olacak.

  1. Branch.io eklentisiyle Ionic kullanan herhangi biri düzeltmeme yardımcı olabilir mi?
  2. İyonik'te global bir işlevi nasıl tanımlarım?

Teşekkürler!

cevap

1

Bu küresel yöntemi tanımlamak kolaydır: app.js içinde sayfanın üst kısmında, basitçe eklemek yöntemi: Yardımlarınız için

function DeepLinkHandler(data) { 
     console.log("inside DeepLinkHandler"); 
     if (data) { 
      alert('Data from deep link: ' + JSON.stringify(data)); 
     } else { 
      alert('No data found'); 
     } 
    } 

sayesinde, aslında benim problem ve i çözüldü console.log :)

Düzenleme: Gerçekten de bunu çağırır, ama şimdi farklı bir problemi anlamaya ihtiyacım var - Hizmetlerimi global işlevden nasıl ararım? Cevabın henüz ne olduğundan emin değilim.

Edit2: Bunu çözme fikri bir olayı ateşlemektir. İşte ilham, biraz değişiklik ve işe yaradı. https://github.com/BranchMetrics/Cordova-Ionic-PhoneGap-Deferred-Deep-Linking-SDK/issues/128