Zoho CRM SDK - 如何在加载时触发功能?

Zoho CRM SDK - How to trigger a function on load?

我创建了一个小部件,用于检索当前亲自登录的 ZOHO CRM 的当前用户详细信息。

我有一个按钮可以获取当前用户的电子邮件并根据检索到的电子邮件过滤数据库。

我目前通过点击一个按钮来实现这个功能,但是我试图在页面加载时触发这个功能。

<div style="text-align:center">
    <div style = "width:100%;margin:auto;">
       <button type="button" style="margin:20px;cursor: pointer;background-color: blue;color:white;padding-top:4px;padding-bottom:4px;width:200;" id="wOpen"><i class="fa fa-check"></i>Refresh My Tasks</button>
    </div>
</div>
<script>
var currentUserEmail;
$(document).ready(function() {

    ZOHO.embeddedApp.on("PageLoad", function(onloadData) {
        data1 = onloadData;
    });

    $("#wOpen").click(function() {

    ZOHO.CRM.CONFIG.getCurrentUser().then(function(data){
      console.log(data.users[0].email);
      currentUserEmail = data.users[0].email;
      document.getElementById('iframe1').src = 'https://creatorapp.zohopublic.com.au/ozeitaus/tasks/report-embed/Copy_of_Tasks_Report/J7qC6AS7Jzk8sNJabbTV6jrrWzz4GhSTJHQWkspmm2Sjm7zWNECD2qUWwOdOaDkqGZO5GOT87bufbUqMDRCpQhyD0y0JazH1P4fv?Status=Completed&Status_op=19&MainTaskOwnerEmail='+ currentUserEmail;


})
    });
    ZOHO.embeddedApp.init();

});
</script>
<iframe id="iframe1" height='500px' width='100%' frameborder='0' allowTransparency='true' scrolling='auto' src=''></iframe>
</body>
</html>

将点击函数的内容移动到 on PageLoad 回调

与其在 PageLoad 事件之后单独获取用户详细信息,不如在该函数本身内部获取。

示例代码(未测试)

ZOHO.embeddedApp.on("PageLoad", function(data) {
  //.....
  ZOHO.CRM.CONFIG.getCurrentUser()
    .then(function(userdata){
        console.log(userdata.users[0].email);
        currentUserEmail = userdata.users[0].email;
     })
     .catch((error) => {
        console.error(error);
     });
  ///......
});
ZOHO.embeddedApp.init();