Javascript 谷歌标签管理器API示例抛出;未捕获范围错误:超过最大调用堆栈大小;控制台中的错误

Javascript 谷歌标签管理器API示例抛出;未捕获范围错误:超过最大调用堆栈大小;控制台中的错误,javascript,api,google-api,google-tag-manager,Javascript,Api,Google Api,Google Tag Manager,我从Google Tag Manager API数据计算中获取了“完整示例”的代码: 我将TODO更改为我的客户端ID,并更新了帐户路径、容器名称和工作区名称,但当我运行它时,我在控制台中看到一个空白页面 我错过了什么步骤?如果有什么不同的话,我也会在localhost上运行该文件。这是因为第47行的checkAuth()函数在递归循环中调用自己 我通过更改调用函数的名称来修复它- function checkAuthVal(immediate) { var authorizeCheck

我从Google Tag Manager API数据计算中获取了“完整示例”的代码:

我将
TODO
更改为我的客户端ID,并更新了
帐户路径
容器名称
工作区名称
,但当我运行它时,我在控制台中看到一个空白页面


我错过了什么步骤?如果有什么不同的话,我也会在localhost上运行该文件。

这是因为第47行的checkAuth()函数在递归循环中调用自己

我通过更改调用函数的名称来修复它-

function checkAuthVal(immediate) {
  var authorizeCheckPromise = new Promise((resolve) => {
    gapi.auth.authorize(
      { client_id: CLIENT_ID, scope: SCOPES.join(' '), immediate: immediate },
      resolve);
  });
  authorizeCheckPromise
      .then(handleAuthResult)
      .then(loadTagManagerApi)
      .then(runTagManagerExample)
      .catch(() => {
        console.log('You must authorize any access to the api.');
      });
}

/**
 * Check if current user has authorization for this application.
 */
function checkAuth() {
  checkAuthVal(true);
}
这成功了