分支 IO 和反应网络应用程序:'Branch' 未定义

Branch IO and react web app: 'Branch' Undefined

我正在尝试在 React 中使用 branch.io,但是当我尝试使用它时它只会给我错误。 类型错误:无法读取未定义的 属性 'init' 要么 'Branch'未定义:当我没有将该函数设置为变量时

https://docs.branch.io/pages/web/integrate/

在网站上通常是这样使用的...我只是不知道该怎么做。 :(

       let branch = (function(b,r,a,n,c,h,_,s,d,k){if(!b[n]||!b[n]._q){for(;s<_.length;)c(h,_[s++]);d=r.createElement(a);d.async=1;d.src="https://cdn.branch.io/branch-latest.min.js";k=r.getElementsByTagName(a)[0];k.parentNode.insertBefore(d,k);b[n]=h}})(window,document,"script","branch",function(b,r){b[r]=function(){b._q.push([r,arguments])}},{_q:[],_v:1},"addListener applyCode autoAppIndex banner closeBanner closeJourney creditHistory credits data deepview deepviewCta first getCode init link logout redeem referrals removeListener sendSMS setBranchViewData setIdentity track validateCode trackCommerceEvent logEvent disableTracking".split(" "), 0);


branch.init(this.state.key, function(err, data) {
    window.data = data.data_parsed;
    window.branch = branch;
}); 

您的代码与 branch.io 文档中给出的说明不完全一致。那个缩小的脚本已经负责创建一个全局 branch 变量,所以删除你的 let branch =。因为就在那里,它覆盖了脚本注入的那个,这就是为什么 branch 被设置为 undefined.

的原因

如果您配置了 eslint 并且只是担心 branch 未从其角度定义,请在 init 语句之前添加此注释:

// eslint-disable-next-line no-undef