【问题标题】:Can't compile SignalR+TypeScript with MessagePack plugin无法使用 MessagePack 插件编译 SignalR+TypeScript
【发布时间】:2019-02-03 09:29:57
【问题描述】:

通过使用 AspNetCore 2.2、SignalR 和 TypeScript 前端创建了一个小型应用程序,我取得了成功。捆绑包是通过 WebPack 创建的。

我想尝试的是启用 MessagePack 协议插件。但是,the docs 关于如何安装它似乎不够准确。虽然命令行编译(npm run build)看起来很好,但当我启动应用程序进行调试时,它不会编译,因为 TypeScript 代码中缺少某些内容:

错误 TS2688 构建:找不到“节点”的类型定义文件。 C:\ ... \node_modules@aspnet\signalr-protocol-msgpack\dist\esm\MessagePackHubProtocol.d.ts 1

错误 TS2580 构建:找不到名称“缓冲区”。是否需要安装 节点的类型定义?尝试npm i @types/node,然后添加node 到 tsconfig 中的 types 字段。 C:\ ... \node_modules@aspnet\signalr-protocol-msgpack\dist\esm\MessagePackHubProtocol.d.ts 16

顺便说一句,如果我遵循这个提示,由于我的代码中存在“setTimeout”,事情会变得更糟。基本上,似乎“节点” setTimeout 覆盖了“窗口”的,并且它们的签名不匹配。

这是 package.json(没有提示的补丁):

{
  "version": "1.0.0",
  "name": "asp.net",
  "private": true,
  "devDependencies": {
    "del": "2.2.0",
    "@types/jquery": "^3.3.29",
    "ts-loader": "^5.3.3",
    "typescript": "^3.2.2",
    "webpack": "^4.28.3",
    "webpack-cli": "^3.2.1",
    "webpack-merge-and-include-globally": "^2.1.14",
    "clean-webpack-plugin": "^1.0.0"
  },
  "dependencies": {
    "@aspnet/signalr": "^1.1.0",
    "@aspnet/signalr-protocol-msgpack": "^1.1.0",
    "axios": "^0.18.0",
    "bootstrap": "^4.2.1",
    "jquery": "^3.3.1"
  },
  "scripts": {
    "build": "webpack --mode=development",
    "watch": "webpack --mode=development --watch",
    "release": "webpack --mode=production",
    "test": "echo \"Error: no test specified\" && exit 1"
  }
}

最后,这里是 tsconfig.json:

{
  "compilerOptions": {
    "noImplicitAny": false,
    "noEmitOnError": true,
    "removeComments": false,
    "sourceMap": true,
    "target": "es5",
    "lib": [ "es6", "dom" ]
  },
  "exclude": [
    "node_modules",
    "wwwroot"
  ]
}

是我,还是某个地方的错误?

【问题讨论】:

    标签: typescript asp.net-core-signalr msgpack


    【解决方案1】:

    在此处关注问题的演变:https://github.com/aspnet/AspNetCore/issues/7229

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-31
      • 1970-01-01
      • 2017-12-09
      • 2018-06-02
      • 1970-01-01
      • 1970-01-01
      • 2016-12-18
      • 2017-12-06
      相关资源
      最近更新 更多