我正在尝试将 Branch.io 集成到我的应用程序中,但收到此错误消息: “未捕获的 ReferenceError:未定义 DeepLinkHandler”
我在这里按照他们的说明添加了他们的 SDK: https://dev.branch.io/getting-started/sdk-integration-guide/guide/cordova/#start-a-branch-session
具体来说,我应该这样做: “然后添加 DeepLinkHandler 方法,它将在 session 存在时充当我们的回调。深层链接数据将包含在此处:”
function DeepLinkHandler(data) {
alert('Data from initSession: ' + data.data);
}
这正是我所做的。
我与他们的支持进行了交谈,得出的结论是我们需要将该函数定义为全局函数,这样就可以从任何地方调用它。
- 有没有使用 Ionic 和 Branch.io 插件的人可以帮我解决这个问题?
- 如何在 Ionic 中定义全局函数?
谢谢!
最佳答案
定义一个全局方法很容易: 在页面顶部的 app.js 中,只需添加以下方法:
function DeepLinkHandler(data) {
console.log("inside DeepLinkHandler");
if (data) {
alert('Data from deep link: ' + JSON.stringify(data));
} else {
alert('No data found');
}
}
感谢您的帮助,它实际上解决了我的问题并且我得到了 console.log :)
编辑:它确实调用了它,但现在我需要弄清楚一个不同的问题 - 我如何从全局函数调用我的服务。我还不确定答案是什么。
编辑2: 解决这个问题的想法是触发一个事件。这是灵感,一些改变,它奏效了。 https://github.com/BranchMetrics/Cordova-Ionic-PhoneGap-Deferred-Deep-Linking-SDK/issues/128
关于ionic-framework - 需要 Branch.io ionic 集成/全局函数定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36412519/