jquery.signalr无法识别jquery

时间:2018-11-05 02:33:56

标签: jquery signalr

我是使用SignalR的新手。我已经在服务器端设置了Asp.Net(不是核心)SignalR。

现在,在已经基于React(使用Typescript)构建的客户端上,我正在尝试连接到各种集线器。

我从以下位置安装了SignalR版本:

npm安装信号器

这些是我的代码中的导入:

import * as React from "react";
import $ from "jquery";
import { observer } from "mobx-react";
import signalr from "signalr";

但是,加载jquery.signalr.js时,我始终遇到此错误:

未找到jQuery。请确保在SignalR客户端JavaScript文件之前引用jQuery

我已经尝试了很多在线发布的解决方案,例如尝试在加载JS之前添加这些行(甚至实际上将其添加到jquery.signalR.js内)

import $ from 'jquery';
window.jQuery = $;
var $ = require("jquery")

但是这些都不起作用。

我也更新了装载机,但是没有运气。

rules: [
            {
                test: require.resolve("jquery"),
                use: [
                    {
                        loader: "expose-loader",
                        query: "jQuery",
                    },
                    {
                        loader: "expose-loader",
                        query: "$",
                    },
                ]
            }]

我还更新了signalr.js文件,因为它无法解析正确的jquery.js文件。

我对此进行了如下更新。

另外,请注意,在进入signalr.js文件之前,已经定义了$,但是最初下面的函数具有签名

(function ($, window, undefined) {

我将其更改为下面的另一个变量。现在$至少已定义,但是其类型解析为“功能”,它是一个字符串,而不是实际函数。

/// <reference path="../jquery/dist/jquery.min.js" />
/// <reference path="../jquery/dist/jquery.js" />
/// <reference path="jquery.signalR.version.js" />
(function (k, window, undefined) {

如果有人能告诉我在这里做什么和我在做什么错,我将不胜感激。

谢谢。

0 个答案:

没有答案