0

我在获取 api 执行函数之外的变量的更新值时遇到了问题。在这里,我正在使用 JIVE,所以我使用的是 'osapi' get 方法。

function onReady(tileConfig, tileOptions, viewer, container) {
   var connectLanguage = ""

   osapi.jive.core.get({
        v: "v3",
        href: "/people/@me"
    }).execute(function (response) {
        try {
            connectLanguage = response.jive.locale;
        }
        catch(error) {
            connectLanguage = "";
            console.log(error)
        }
    })
     console.log(connectLanguage) //getting 'undefined' as a result.

     if(connectLanguage === "en") {
        //execute function which depends on 'connectLanguage'
     }else {
       //execute function which depends on other value of 'connectLanguage'
     }
   }

 
4

1 回答 1

1

使用 Promise Resolve 来解决这个问题。

参考链接:在promise和resolve中使用函数

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/resolve

于 2020-07-20T19:36:38.147 回答