2

我有一个主题对象,它有许多对象和数组作为值。即,像这样:

export const theme = {
  colors: {...list of colors},
  breakpoints: [...array of breakpoints],
  ...
}

现在,假设我想访问另一个文档中的颜色对象和断点数组。目前,我正在导入这样的主题:

import { theme } from '../../theme'
const { colors, breakpoints: bp } = theme
}

我正在使用breakpoints: bp这样我就可以breakpointsbp我的文件中使用别名。

我想知道的是是否可以在 import 语句中完成所有这些操作。即,不是导入整个theme对象,而是只导入颜色对象和断点数组。像这样的东西(这个代码不起作用,它只是为了说明这个想法):

import { theme.colors as colors, theme.breakpoints as bp } from '../../theme'

这可能吗?如果是这样,怎么做?

谢谢。

4

2 回答 2

1

您可能应该更改导出主题的方式。您可以只导出主题的每个属性 - 它就像删除 const 声明并仅导出对象一样简单。:

export {
  colors: {...list of colors},
  breakpoints: [...array of breakpoints],
  ...
}

然后像这样使用导入:

import { colors, breakpoints as bp } from '../../themes'
于 2019-11-13T14:02:24.073 回答
0

我认为不幸的是,导入语句不支持对象解构

我找到了解释这个问题的线程

如何在 ES6 模块中导入部分对象

于 2019-11-13T15:11:57.057 回答