如何使用 CoffeeScript 发出 $.get 请求?

发布于 2024-10-14 23:38:44 字数 340 浏览 0 评论 0原文

如何在 CoffeeScript 中执行以下操作?

  $( function() {
    $('input#username').keyup( function() {
      var username = $('input#username').val();
      url = '/users/check_username/';
      params = { username : username };
      $.get(url, params, function(response){ markUsername(response); }, "json");
    });
  })

How do I do the following in CoffeeScript?

  $( function() {
    $('input#username').keyup( function() {
      var username = $('input#username').val();
      url = '/users/check_username/';
      params = { username : username };
      $.get(url, params, function(response){ markUsername(response); }, "json");
    });
  })

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

放我走吧 2024-10-21 23:38:45

这是迄今为止我想出的最好的通用模式:

$.ajax '/yourUrlHere',
  data :
    key : 'value'
  success  : (res, status, xhr) ->
  error    : (xhr, status, err) ->
  complete : (xhr, status) ->

它编译为:

$.ajax('/yourUrlHere', {
  data: {
    key: 'value'
  },
  success: function(res, status, xhr) {},
  error: function(xhr, status, err) {},
  complete: function(xhr, status) {}
});

This is the best generic pattern I've come up with so far:

$.ajax '/yourUrlHere',
  data :
    key : 'value'
  success  : (res, status, xhr) ->
  error    : (xhr, status, err) ->
  complete : (xhr, status) ->

It compiles down to:

$.ajax('/yourUrlHere', {
  data: {
    key: 'value'
  },
  success: function(res, status, xhr) {},
  error: function(xhr, status, err) {},
  complete: function(xhr, status) {}
});
余生再见 2024-10-21 23:38:45

这是一种方法:

$(->
    $('input#username').keyup(->
        username = $('input#username').val()
        url = '/users/check_username/'
        params = {username: username}
        $.get(url, params, (response)->
            markerUsername(response)
        , "json")
    )
)

其中一些括号可以省略,但在我看来,它们有助于理解代码流程(至少在这种情况下)。

我建议在这里摆弄coffeescript http://jashkenas.github.com/coffee-script/(使用“尝试咖啡脚本”)按钮。该语言很容易学习。

This is a way:

$(->
    $('input#username').keyup(->
        username = $('input#username').val()
        url = '/users/check_username/'
        params = {username: username}
        $.get(url, params, (response)->
            markerUsername(response)
        , "json")
    )
)

Some of these parenthesis can be omitted, but in my opinion, they help with understanding the code flow (at least in this situation).

I recommend fiddling around with coffeescript here http://jashkenas.github.com/coffee-script/ (use the "try coffeescript") button. The language is very easy to learn.

捂风挽笑 2024-10-21 23:38:44

这是另一种稍微简洁的编写方式:

$ ->
  $('input#username').keyup ->
    username = $(this).val()
    callback = (response) -> markerUsername response
    $.get '/users/check_username/', {username}, callback, 'json'

请注意缺少括号和简写“{username}”对象文字。

Here's another slightly condensed way to write it:

$ ->
  $('input#username').keyup ->
    username = $(this).val()
    callback = (response) -> markerUsername response
    $.get '/users/check_username/', {username}, callback, 'json'

Note the lack of parens, and the shorthand "{username}" object literal.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文