获取 TypeError:wsc.require 不是 hyco-ws npm 包的功能

Posted

技术标签:

【中文标题】获取 TypeError:wsc.require 不是 hyco-ws npm 包的功能【英文标题】:Getting TypeError: wsc.require is not a function for hyco-ws npm package 【发布时间】:2020-03-16 05:23:23 【问题描述】:

我想在当前有效的服务中使用这个 npm 包。当我运行“npm run start”时,它失败了,我得到了错误:

TypeError: wsc.require 不是函数 在 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');

注意“******”是指我出于隐私原因隐藏的文件夹名称。

【问题讨论】:

【参考方案1】:

所以我自己解决了,很简单。

我们有一个 webpack.config.backend.js 设置,它在“npm run build”之后将模块导出到 lib 文件夹的节点模块中。只需将我的包添加到 module.exports 中。

    module.exports =  
       externals:  ['utf-8-validate', 'bufferutil',
          "hyco-ws": "hyco-ws",
           .................. ,
           .................. ,
           ]
     ;

【讨论】:

以上是关于获取 TypeError:wsc.require 不是 hyco-ws npm 包的功能的主要内容,如果未能解决你的问题,请参考以下文章

在执行并行 ssh 时获取“TypeError:'NoneType' 对象不可迭代”

获取 TypeError:news.map 不是函数。我想念啥?

在我的脚本中获取“TypeError:需要整数”

TypeError:无法在reactjs登录页面中获取

TypeError:使用axios获取数据时language.map不是函数

TypeError:res.json 不是函数(无法获取数据)