javascript - 创建时访问对象内容

标签 javascript json reactjs object

我正在尝试创建一个包含 api 路径变量的大对象。 我需要能够经常更改 api 路径,以便迁移应用程序,因此我希望在一个文件中创建一些基本路径,并遵循 postman 中的 api 文档的方案。 这是我希望能够使用的方式:

export const BASES = {
  OD: {
    BASE: `${urlbase}/od/`,
    READ: `${BASES.OD.BASE}/read/v1/`,
    WRITE: `${BASES.OD.BASE}/write/v3`,
  },
  WH: {
    BASE: `${urlbasenew}/wh/`,
    EX: `${BASES.WH.BASE}/ex`,
  },
};

然后通过BASES.OD.READ访问路径等等...

现在我收到错误

ReferenceError: Cannot access 'BASES' before initialization

这对我来说似乎合乎逻辑。有没有一种优雅的方式来处理这个问题? (或者也许我只是盲目的) 谷歌搜索错误没有帮助,似乎没有人尝试过这一点。

最佳答案

实现此目的的一种方法是提取 BASE url,以便您可以在对象的许多部分使用它们:

const odBase = `${urlbase}/od/`
const whBase = `${urlbasenew}/wh/`;

export const BASES = {
  OD: {
    BASE: odBase,
    READ: `${odBase}/read/v1/`,
    WRITE: `${odBase}/write/v3`,
  },
  WH: {
    BASE: whBase,
    EX: `${whBase}/ex`,
  },
};

关于javascript - 创建时访问对象内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60126673/

相关文章:

javascript - 如何获取与 angularjs 的 ui-router 一起使用的多个 View 的示例

javascript - Backbone - 嵌套在模型中的集合

java - 从互联网加载数组

java - 将java日期转换为json日期

javascript - 如何访问 axios 加载的对象属性?

javascript - 在 react.js 中使用没有这个的 setState

reactjs - 如何在blueprintjs中自定义颜色?

javascript - Firefox 扩展找出哪个 Javascript 事件绑定(bind)到被检查的元素?

javascript - 回调、Promise 和事件的区别 JavaScript/React-Native <-> Java/Android

javascript - Angularjs 过滤器不适用于 ng-repeat