【问题标题】:How do I use NPM installed socket.io with TypeScript and webpack?如何将 NPM 安装的 socket.io 与 TypeScript 和 webpack 一起使用?
【发布时间】:2016-04-26 03:43:29
【问题描述】:

我正在尝试将 TypeScript 与节点 socket.iowebpack 一起使用。

我已经设置了webpack.config.jstsconfig.jsontsd.json,并使用tsdDefinitelyTyped repository 下载了socket.io 的类型文件。我已经用npm 安装了socket.io。

当我跑步时:

webpack

我收到以下错误:

ERROR in ./~/socket.io/lib/index.js
Module not found: Error: Cannot resolve module 'fs' in /private/tmp/ts-test/node_modules/socket.io/lib
 @ ./~/socket.io/lib/index.js 7:11-24

似乎 webpack 无法解析 node_modules 目录中包含的模块。

我的版本是:

  • 节点 v4.2.1
  • tsd 0.6.5
  • tsc 1.7.5
  • webpack 1.12.11
  • socket.io 1.4.4

我已经向这个存储库发布了一个小例子:https://github.com/cubabit/typescript-problems

【问题讨论】:

    标签: javascript node.js socket.io typescript webpack


    【解决方案1】:

    错误:无法解析 /private/tmp/ts-test/node_modules/socket.io/lib 中的模块“fs”

    该文件不应在前端加载。您正在加载 NodeJS 的 backend / nodejs javascript 文件。

    Socket.io 带有后端和前端。

    更多

    对于一个工作示例,请提供http://alm.tools/ 源代码。

    【讨论】:

    • 后端不能使用webpack吗?我没有为前端编译我的打字稿
    • 没有。后端不需要 webpack!要为后端编译使用grunt,甚至只是tsc,例如tsc -w -p ./src
    • 啊,好的。这是有道理的——谢谢。我想我需要弄清楚如何将文件编译到 dist 目录中,因为在我的 ts 文件旁边创建的所有 js 文件似乎都很混乱
    • @cubabit 使用 --outDir
    猜你喜欢
    • 2019-04-20
    • 1970-01-01
    • 2016-02-08
    • 2021-03-08
    • 1970-01-01
    • 2016-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多