【问题标题】:Meteor is crashing with jQueryMeteor 与 jQuery 一起崩溃
【发布时间】:2013-12-16 06:20:02
【问题描述】:

我遇到了 Meteor 和 Jquery 的问题。我已经添加了 underscore.js 和 jquery,但是当我尝试运行代码时仍然出现以下错误。服务器在启动之前就失败了。

任何帮助将不胜感激。

这是输出窗口的副本。我知道我错过了一些非常简单的东西。我可以让其他流星应用程序运行。

=> Meteor server running on: localhost:3000/

.meteor\local\build\server\server.js:34
5
  }).run();
     ^
ReferenceError: jQuery is not defined
    at app/lib/jquery-ui.custom.min.js:4:4148
    at \.meteor\local\build\server\serve
r.js:306:12
    at Array.forEach (native)
    at Function._.each._.forEach (C:\Users\rodgerse\node_modules\underscore\unde
rscore.js:79:11)
    at run (\.meteor\local\build\server\
server.js:239:7)
=> Exited with code: 1
=> Meteor server restarted

\.meteor\local\build\server\server.js:34
5
  }).run();
     ^
ReferenceError: jQuery is not defined
    at app/lib/jquery-ui.custom.min.js:4:4148
    at \.meteor\local\build\server\serve
r.js:306:12
    at Array.forEach (native)
    at Function._.each._.forEach (C:\Users\rodgerse\node_modules\underscore\unde
rscore.js:79:11)
    at run (\.meteor\local\build\server\
server.js:239:7)
=> Exited with code: 1
=> Meteor server restarted

\.meteor\local\build\server\server.js:34
5
  }).run();
     ^
ReferenceError: jQuery is not defined
    at app/lib/jquery-ui.custom.min.js:4:4148
    at \.meteor\local\build\server\serve
r.js:306:12
    at Array.forEach (native)
    at Function._.each._.forEach (C:\Users\rodgerse\node_modules\underscore\unde
rscore.js:79:11)
    at run (\.meteor\local\build\server\
server.js:239:7)
=> Exited with code: 1
=> Your application is crashing. Waiting for file change.

【问题讨论】:

  • 您确定jQuery 可用吗? jQuery UI 似乎无法访问 jQuery。
  • "我已经添加了 underscore.js 和 jquery" - 默认情况下,jQuery 和 Underscore 包含在 Meteor 中,因为 Meteor 的核心同时使用了它们。您无需执行任何操作即可添加它们。请注意,您只能在客户端代码中使用 jQuery,但您可以在客户端和服务器代码中使用 Underscore。

标签: jquery meteor


【解决方案1】:

要遍历服务器上的数组,您应该使用下划线的._each 方法。它带有 Meteor,因此无需安装任何软件包或类似的东西。

所以,而不是:

$.each(someArray, function (index, element) {
   //Some awesome logic
})

你可以这样做:

_.each(someArray, function (element, index, list) {
    //Some awesome logic.
});

Check this out 了解更多信息。

【讨论】:

    【解决方案2】:

    jQuery 仅在客户端可用 - 而不是服务器 [1]。因此,因为它依赖于 jQuery,所以您的文件只能在客户端上运行。你应该把它放在client 目录下:

    app/client/lib/jquery-ui.custom.min.js
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-17
      • 2020-05-27
      相关资源
      最近更新 更多