es6 import:名称导入的变量

时间:2018-05-03 17:12:34

标签: ecmascript-6 es6-modules

我有一个巨大的权限列表,我只对导入其中三个权限感兴趣。我也有兴趣将它们分组到一个对象中,并为该对象分配一个变量。

我可以做得比以下更好吗?

import {
  firstPermission,
  secondPermission,
  thirdPermission,
} from '@constants/permissions';

const relevantPermissions = { firstPermission, secondPermission, thirdPermission };

我倾向于尝试在as步骤中使用import关键字,但我无法使用任何此类内容。

(这感觉就像一个无知的问题;请原谅。)

1 个答案:

答案 0 :(得分:4)

as关键字旨在以不同的名称导入命名导出,而不是将它们分组。

问题中列出的代码是应该这样做的方式。如果relevantPermissions应该在多个地方使用,那么重新导出它们是有益的:

export {
  firstPermission,
  secondPermission,
  thirdPermission,
} from '@constants/permissions';

...

import * as relevantPermissions from './relevant-permissions';

这种名为import的方式如果其中一些仍未使用,则有可能被树木震动,也可能获得ES模块的其他好处,例如改进IDE中的代码完成。