node.js - 获取 TypeError:wsc.require 不是 hyco-ws npm 包的功能
问题描述
我想在当前有效的服务中使用这个 npm 包。当我运行“npm run start”时,它失败了,我得到了错误:
TypeError: wsc.require is not a function at Object../node_modules/hyco-ws/lib/HybridConnectionWebSocketServer.js (D:\FreshClones\beconnect5******\lib\main.js:80851:24) 在webpack_require (D:\FreshClones\beconnect5******\lib\main.js:21:30) 在 Object../node_modules/hyco-ws/index.js (D:\FreshClones\beconnect5**** **\lib\main.js:80686:20) 在webpack_require (D:\FreshClones\beconnect5******\lib\main.js:21:30) 在 Object../source/backend/azure/ EventGridClient.ts (D:\FreshClones\beconnect5******\lib\main.js:235598:20) 在webpack_require (D:\FreshClones\beconnect5******\lib\main.js:21) :30) 在 Object../source/backend/main.ts (D:\FreshClones\beconnect5\i******\lib\main.js:236679:27) 在webpack_require(D:\FreshClones\beconnect5******\lib\main.js:21:30) 在 Object.0 (D:\FreshClones\beconnect5******\lib\main.js:238511: 18) 在webpack_require (D:\FreshClones\beconnect5******\lib\main.js:21:30) [web-serv] [nodemon] 应用程序崩溃 - 在开始之前等待文件更改...
这是在 main.js 文件中产生错误的代码行:
var wsc = __webpack_require__.c[/*require.resolve*/(/*! ws */ "./node_modules/hyco-ws/node_modules/ws/index.js")]
const Extensions = wsc.require('./lib/Extensions');
注意“******”这是指我出于隐私原因隐藏的文件夹名称。
解决方案
所以我自己解决了,很简单。
我们有一个 webpack.config.backend.js 设置,它在“npm run build”之后将模块导出到 lib 文件夹的节点模块中。只需将我的包添加到 module.exports 中。
module.exports = {
externals: ['utf-8-validate', 'bufferutil',{
"hyco-ws": "hyco-ws",
.................. ,
.................. ,
}]
};
推荐阅读
- arrays - 如何使用聚合合并/合并 MongoDB 中的数组数组?
- batch-file - 仅当内容保存在子目录而不是根文件夹中时才使用批处理移动内容
- javascript - Reactjs/Next.js 避免函数重复
- python - Tkinter .after() 方法比它应该的更快
- android - Android JSON解析数组在另一个数组中,没有键
- remotewebdriver - 为什么我们不创建一个 RemoteWebDriver driver = new ChromeDriver() 的对象;? 为什么我们要为 WebDriver 接口创建它
- javascript - 我的 AWS EC2 Ubuntu 服务器使用 1.25 倍的内存,但速度却是原来的两倍。为什么是这样?
- javascript - 在 expo-sqlite 中等待 executeSql
- java - 长小数分隔符(Java/Spring)
- gps - 带有 RRDTool 的 MRTG 没有任何显示