「大坑」关于 module 模式下如何正确引入 WebSocketServer

吐槽/反馈/建议:我的咸鱼心  爱发电-@wdssmq  FeedsPub-wdssmq

WebSocket.Server is not a constructor

遇到上边错误,直接照着 cjs 写法改成 mjs 形式,但是用不了;

import WebSocket from "ws"
console.log(typeof WebSocket)
console.log(typeof WebSocket.Server)
// function
// undefined

用报错的「WebSocket.Server is not a constructor」作为关键词并没能找到原因;

直到我换了个姿势,直接搜索「import WebSocket from 'ws'」,得到的代码是下边这样子的:

import WebSocket, { WebSocketServer } from 'ws';
console.log(typeof WebSocket)
console.log(typeof WebSocketServer)
// function
// function

然后我去看了 ws 这个库的导出文件;

// cjs
'use strict';

const WebSocket = require('./lib/websocket');

WebSocket.createWebSocketStream = require('./lib/stream');
WebSocket.Server = require('./lib/websocket-server');
WebSocket.Receiver = require('./lib/receiver');
WebSocket.Sender = require('./lib/sender');

WebSocket.WebSocket = WebSocket;
WebSocket.WebSocketServer = WebSocket.Server;

module.exports = WebSocket;
// mjs
import createWebSocketStream from './lib/stream.js';
import Receiver from './lib/receiver.js';
import Sender from './lib/sender.js';
import WebSocket from './lib/websocket.js';
import WebSocketServer from './lib/websocket-server.js';

export { createWebSocketStream, Receiver, Sender, WebSocket, WebSocketServer };
export default WebSocket;

差别不只是有点儿大好么 Orz;


爱发电

本文标题:《「大坑」关于 module 模式下如何正确引入 WebSocketServer》作者:沉冰浮水
原文链接:https://www.wdssmq.com/post/20220301064.html
特别注明外均为原创,转载请注明。

分享到微信

扫描二维码

可在微信查看或分享至朋友圈。

相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

网站分类

搜索

本周旧文

乐高 DC 里,(基本就蝙蝠侠家,,年龄最小的那个无论是谁感觉人设都会变得一样 - -

所以,就感觉和祥林嫂一样,每天都需要向外「签到」自己的情绪感受,然而又并没有什么「需要」我这样的签到……

只要梦里出现学校的概念,形式和反抗好像也都不重要了,,天还没亮,骑自行车去上学,没走多远「想起来」并不需要上学的,下来搬起车原地调头然后推回家。。

《K 星异客》里,「青鸟」真的是等来的,或者说是突然出现然后引发改变的外部因素。。。

梦的最后也是又一次意识到教室里的同学只是幻境中的投影,被困住的只有我;虽然也终于总结出,在梦里从来没有和同学的投影有过冲突和争执,甚至还附和我反驳「管理者」身份被进一步放大并不特指某一个人的老师。。

就和大脑会突然播放某一首歌一样,「讨厌自己」这句话也是自己突然就会播放一次,然后频率更高。。

学校,学校,学校,总是梦到学校,,就好像灵魂被诅咒禁固一样。。

拟造轻小说标题:《爱上网冲浪的山本同学总是滥用讨人嫌的罗马音缩写这件事》,简称《山本罗马音》

英文是一种语言的「文字」,所以英文缩写也是「文字的缩写」;对应到中文也应该是对「文字」进行缩写,而不是「读音的符号化表示的缩写」;这也是为什么反对用拼音当变量名,拼音只是将中文这一语言的「读音」图形化表达的工具,我们直接使用的是语言的「文字」和「读音」;

——甚至标准的拼音应该带上声调……

小主机作为服务器使用,发现开机时如果不接显示器,,再接上就没视频信号(HDMI 接口),只能重启。

之前听说过显示卡欺骗器,想着插 VGA 口上,实际使用走 HDMI,然而买了一个发现都是公头。。这东西输入输出都不统一的么 - -

姑且可以退货重新下单了 VGI 口的。。(╯﹏╰)

所以,这种情况确实是用这个方案来解决的吧。。

爱发电支持者

最新留言

友情链接

  • 订阅本站的 RSS 2.0 新闻聚合
召唤伊斯特瓦尔