无法跟踪堆栈跟踪

Can not follow stack trace

我正在调试我的 Vue Storefront 项目,它基于 Nuxt.js

我目前面临的错误是:TypeError: Invalid URL 信息量不大。

堆栈跟踪显示 getIntergrationConfigsrc/utils/nuxt 文件夹中。我似乎找不到在我的项目中调用的文件夹或函数。

我怎样才能追溯我所面临的错误的来源?

通过查看您的错误,这似乎与我们的核心处理 URL 安装过程的方式有关。

getIntegrationConfig 它是 VSF 核心 (https://github.com/vuestorefront/vue-storefront/blob/12feb05f644fd21998cd3c69a3f3e576e3359bba/packages/core/core/src/utils/nuxt/_proxyUtils.ts) 上的一个函数

它将定义 Nuxt 将用于在前端和 VSF 之间进行通信的 API URL API

export const getIntegrationConfig = (context: NuxtContext, configuration: any) => {
  const baseURL = process.server ? context?.$config?.middlewareUrl : window.location.origin;
  const cookie = getCookies(context);

  if (process.server && context?.$config?.middlewareUrl) {
    Logger.info('Applied middlewareUrl as ', context.$config.middlewareUrl);
  }

  return merge({
    axios: {
      baseURL: new URL(/\/api\//gi.test(baseURL) ? '' : 'api', baseURL).toString(),
      headers: {
        ...(cookie ? { cookie } : {})
      }
    }
  }, configuration);
};

随着您的错误继续,我们看到它将在 new URL class 创建时被触发,当将构造函数传递给 URL class.

如果我们查看代码,我们可以假设 baseURL 未正确定义。

我可以建议您在 nuxt.config.js 文件中定义服务器中间件 URL (https://docs.vuestorefront.io/v2/security/api-url.html)