下面的代碼片段是Drift chat
方法來獲取用戶在聊天中提供的email id
。如何在JavaScript中給出局部變量,全局範圍
我試圖通過將email id (e.data.email)
存儲在全局變量data_email
之外來訪問給定函數範圍之外的email id (e.data.email)
。
我試圖three
方法使data_email
全局變量 - window
,let
,const
。
window.drift.on("emailCapture", function(e) {
console.log("user identified as: " + e.data.email);
window.data_email = e.data.email;
// let data_email = e.data.email;
// const data_email = e.data.email;
ga('send', 'event', {
eventCategory: 'driftemail',
eventAction: 'driftemailCaptured',
});
});
console.log(data_email);
嘗試所有我得到的錯誤 - Uncaught ReferenceError: data_email is not defined
。 請任何人建議我一個工作,我會非常感激。我的目標是在給定功能之外訪問捕獲的電子郵件。
在嘗試檢索該值之前發生了事件嗎? – Teemu
之後觸發事件和電子郵件捕獲功能 - 'console.log(「用戶標識爲:」+ e.data.email);'但外部變量相同的錯誤 –
聲明它的事件處理程序,然後它將具有全局範圍 - 並且使用'let'或'var'而不是'const' –