CoffeeScript: первый опыт

категория: CoffeeScript
Я решил долго не читать доку, синтаксис там интуитивно понятен, а просто на практике попробовать - переписать какой-то старый код на CoffeeScript. Для примера взял немного кода со своего блога JS + jQuery и переделал на CoffeeScript + jQuery. Что нам для этого понадобится: 1. Создаем файл в нашей папочке js, пусть будет main.coffee 2. Настраиваем вотчера, который сразу будет компилировать все изменения файла main.coffee в main.js. Это можно сделать разными способами. У меня стоит pyCharm, и он сразу после создания файла с расширением coffee предлагает добавить вотчера и я не отказываюсь)) но можно и через coffee -w или через Grunt.js 3. Пишем код и смотрим как он компилируется в js Теперь можно сравнить. main.coffee
$ ->
  link = window.location.pathname
  django = $("span#django")
  $('pre').each (i, e) ->
    hljs.highlightBlock e
  $('#menu li a[href="'+link+'"]').parent().addClass 'active'
  $.autoScroll =
    scrollDuration: 2000
    showDuration:   400
    hideDuration:   300
  $("div#logo").hover(
    (ev) ->
      django.text "блог python/django разработчика"
      django.css "color":"#093768"
    (ev) ->
      django.text "повесть от том как Веталя стал программистом"
      django.css "color":"#DDDDDD"
  )
main.js
(function() {
  $(function() {
    var django, link;
    link = window.location.pathname;
    django = $("span#django");
    $('pre').each(function(i, e) {
      return hljs.highlightBlock(e);
    });
    $('#menu li a[href="' + link + '"]').parent().addClass('active');
    $.autoScroll = {
      scrollDuration: 2000,
      showDuration: 400,
      hideDuration: 300
    };
    return $("div#logo").hover(function(ev) {
      django.text("блог python/django разработчика");
      return django.css({
        "color": "#093768"
      });
    }, function(ev) {
      django.text("повесть от том как Веталя стал программистом");
      return django.css({
        "color": "#DDDDDD"
      });
    });
  });
}).call(this);
Как я раньше был таким тупым)) И нашел еще один полезный ресурс, который сам ваш JavaScript переведет в CoffeeScript: http://js2coffee.org


blog comments powered by Disqus