首页 > 解决方案 > 将对象导入多个文件会使第一个加载文件中的函数转换为 { [Symbol(__esModule)]: true }

问题描述

我有一个Role定义某些角色的类。然后,我创建类实例并将它们导出为对象{ roleName: roleInstance, ... }

然后我在几个文件中导入这个对象来对用户执行一些验证。

问题:

/Roles/index.js

export default {
  role1: instanceForRole1,
  ...
};

我将具有角色的对象导入到几个单独的文件中,我在其中定义然后导出辅助函数。

/orders/helper.js

import roles from 'path/to/role object';

export default args => {
  ...
}

这些辅助函数在导入其他文件时会以某种方式将这些文件中的函数转换为Symbol

import helper from 'path/to/helper';

export default args => { // this function will become a Symbol
  ....
}

带有导入帮助程序的第一个加载文件变为{ [Symbol(__esModule)]: true }. 之后加载的文件是函数。

标签: javascript

解决方案


推荐阅读