【问题标题】:Vue unable to load SignalR Core with TypescriptVue 无法使用 Typescript 加载 SignalR Core
【发布时间】:2018-05-15 21:43:31
【问题描述】:

我正在尝试在我的 Vue 应用程序中使用 SignalR Core 以及 @vue/cli 和 Typescript。在我的组件中,我只是使用

import signalR from "@aspnet/signalr";

编译器告诉我一切都很好。 npm run servenpm run build 都告诉我一切正常。但是,一旦我尝试在浏览器中加载我的应用程序,就会收到以下错误:

Uncaught TypeError: Cannot set property 'signalR' of undefined

这发生在 signalr.js 内容的最开头:

(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global.signalR = factory());
}

似乎出于某种原因global 未定义。我在 Vue 中导入库的方式是否存在问题,或者 SignalR 团队是否不正确地导出了他们的类?

我也试过const signalR = require("./signalr.js"),但这给了我同样的错误。

【问题讨论】:

    标签: typescript web vue.js signalr


    【解决方案1】:

    我不知道为什么,但罪魁祸首是

    import signalR from "@aspnet/signalr";
    

    如果我不使用包罗万象的导入并且只导入我需要的类型,它可以正常工作:

    import { HubConnection, HubConnectionBuilder } from "@aspnet/signalr";
    

    signalR 的导出方式可能有问题,但我不知道是什么问题。

    【讨论】:

      猜你喜欢
      • 2020-05-07
      • 2018-11-23
      • 1970-01-01
      • 2022-08-23
      • 1970-01-01
      • 2019-12-26
      • 1970-01-01
      • 2019-10-29
      • 2017-06-16
      相关资源
      最近更新 更多