【问题标题】:Using $ jQuery in Angular2在 Angular2 中使用 $ jQuery
【发布时间】:2016-11-03 19:54:47
【问题描述】:

我有一个使用 JavaScriptServices ng2 入门工具包 (https://github.com/aspnet/JavaScriptServices) 创建的非常小而简单的应用程序。

我想连接到信号器集线器并尝试在服务中执行此操作。我正在尝试使用 jquery $.hubconnection 来执行此操作,但是我看到一条错误消息...

Exception: Call to Node module failed with error: Error: Uncaught (in promise): ReferenceError: $ is not defined

我知道这是因为找不到 jQuery 库。有谁知道我可能做错了什么?

我的服务的开始看起来是这样的......

import { Injectable, EventEmitter } from '@angular/core';

declare var $;

@Injectable()
export class SignalRService {

    private proxy;
    private proxyName: string = 'dateHub';
    private connection;

    public foodchanged: EventEmitter<any>;
    public connectionEstablished: EventEmitter<Boolean>;
    public connectionExists: Boolean;

    constructor() {
        this.foodchanged = new EventEmitter();
        this.connectionEstablished = new EventEmitter<Boolean>();
        this.connectionExists = false;

        this.connection = $.hubConnection('http://localhost:5000/' + 'signalr/');
      //  this.proxy = this.connection.createHubProxy(this.proxyName);
      //  this.registerOnServerEvents();
      //  this.startConnection();
    }

我的完整代码在 github https://github.com/bencameron00/Ng2JQueryHub

我真的很感谢这里的一些帮助。我很困。

谢谢

【问题讨论】:

    标签: jquery angular signalr


    【解决方案1】:

    你需要添加 “jquery”:packge.json 中的“2.2.0”,然后在命令中:npm i

    然后

    导入'jquery';

    在您的页面中

    现在 $ 可以工作了

    【讨论】:

    • 谢谢,我已经在引用“jquery”:“^2.2.4”。版本有区别吗?
    • 你是把导入添加到服务还是index.html?
    • 最好在 polyfil/main.ts 中导入
    【解决方案2】:
    <body>
      <app-root>Loading...</app-root>
      <script src="assets/xx/jquery-xxx.min.js"></script>
    </body>
    
    
    declare var $: any;
    
    @Component({})
    

    【讨论】:

    • 我刚试过了,谢谢你的建议,但还是失败了。
    • 以我的回购代码为基础对您有用吗?你能确认一下吗?
    • 不,在我完全基于 angular-2 的代码库中。
    • 虽然这段代码 sn-p 可以解决问题,但它没有解释为什么或如何回答这个问题。请include an explanation for your code,因为这确实有助于提高您的帖子质量。请记住,您正在为将来的读者回答问题,而这些人可能不知道您的代码建议的原因。 举报者/评论者: For code-only answers such as this one, downvote, don't delete!
    猜你喜欢
    • 2016-07-03
    • 1970-01-01
    • 2017-03-27
    • 2016-06-16
    • 2017-06-21
    • 1970-01-01
    • 2017-04-28
    • 2017-02-24
    • 1970-01-01
    相关资源
    最近更新 更多