javascript - Socket.io-client 没有默认导出

标签 javascript socket.io polymer es6-modules

我目前正在从事 polymer 3 的项目,其中一个组件需要导入 socket.io-client,但无论我尝试什么,我都无法让它工作。

我试过:

import io from 'socket.io-client';

我得到的结果:

Uncaught SyntaxError: The requested module '../../node_modules/socket.io-client/lib/index.js' does not provide an export named 'default'

同样如此:

import io from 'socket.io-client/dist/socket.io.js';

我得到的结果:

Uncaught SyntaxError: The requested module '../../node_modules/socket.io-client/dist/socket.io.js' does not provide an export named 'default'

我也试过这个:

import * as io from 'socket.io-client'

我得到的结果:

ReferenceError: require is not defined at index.js:4

还有这个:

import * as io from 'socket.io-client/dist/socket.io.js'

我得到的结果:

TypeError: Cannot read property 'Buffer' of undefined

我后来查看了来自 socket.io-client 的代码,代码中似乎确实没有使用任何 es6 导出,这可以解释为什么它确实不起作用。

我觉得奇怪的是导入语法甚至在他们的网站上被列为受支持。我假设我可能使用了错误的构建或其他东西,但我不知道为什么会这样,因为我使用 "socket.io-client": "^2.1.1" 如果有人知道的话我做错了我很乐意听到。

最佳答案

试试这个

import * as socketIO from 'socket.io'

关于javascript - Socket.io-client 没有默认导出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52310242/

相关文章:

javascript - 在 node/express 中解析 bool 查询字符串参数的正确方法

javascript - 单击后取消选择纸张菜单中的项目

css - 为什么 Flexbox 在非 Chrome 浏览器中不能正常工作?

javascript - FB JS SDK : init not working?

asp.net - 突出显示 Web 表单上的 "current"文本框

javascript - 我可以将数组转换为 Promise 数组吗?

客户端 JavaScript 代码替换

python - NodeJS - SocketIO over SSL with websocket transport

javascript - 函数的返回值未定义

css - Material 设计对网络的有意义的转变