在Node.js中使用导入无法识别默认导出

时间:2020-05-14 07:12:15

标签: javascript node.js

我正在使用expo-server-sdk,而其他软件包还没有遇到这个问题,但是我认为这不是该软件包的特定问题。

基本上,我的IDE识别出此程序包具有默认导出,并正确地将其自动导入为

import { Expo } from 'expo-server-sdk';

问题在于它无法编译并引发错误,

SyntaxError: The requested module 'expo-server-sdk' does not provide an export named 'Expo'

我正在使用带有节点v13.13.0的实验性ESM模块加载器。最初设置配置和环境时,我可以使用import而不是require,但是应该为导入的每个文件添加扩展名。

这有什么问题吗?

Expo post供参考

2 个答案:

答案 0 :(得分:1)

如果默认导出,则只需要

import Expo from 'expo-server-sdk';

代替

import { Expo } from 'expo-server-sdk';

答案 1 :(得分:0)

通过执行以下操作,我设法解决了这个问题:

import Expo from 'expo-server-sdk';

...
let expo = Expo.Expo()
...
if (!Expo.Expo.isExpoPushToken(pushToken)) {
   ... 
}
...

import Expo from 'expo-server-sdk';无效。