Coffeescript помещает директиву var в неправильное место. Я попытался разместить фигурные скобки на функциях, но не успел. Вот код CoffeeScript:Объявление переменной Coffeescript помещено не в том месте
jQuery (->
$(".item-scaffold-edit").live("click", (=>
element = $(this)
cont = element.data("cont")
url = element.data("url")
$.ajax(url,
dataType: "html"
success: (data, textStatus, jqXHR) ->
$("##{cont}").html(data)
$("##{cont}").data("url", url))))
$(".item-menu").live("click", (=>
element = $(this)
cont = element.data("cont")
url = element.data("url")
if url isnt $("##{cont}").data("url")
$.ajax(url,
dataType: "html"
success: (data, textStatus, jqXHR) ->
$("##{cont}").html(data)
$("##{cont}").data("url", url)
$("#navbar-left li").removeClass("active")
element.parent().addClass("active"))))
)
Он генерирует это:
(function() {
jQuery((function() {
var _this = this;
$(".item-scaffold-edit").live("click", (function() {
var cont, element, url;
element = $(_this);
cont = element.data("cont");
url = element.data("url");
return $.ajax(url, {
dataType: "html",
success: function (data, textStatus, jqXHR) {
$("#" + cont).html(data);
return $("#" + cont).data("url", url);
}
});
}));
return $(".item-menu").live("click", (function() {
var cont, element, url;
element = $(_this);
cont = element.data("cont");
url = element.data("url");
if (url !== $("#" + cont).data("url")) {
return $.ajax(url, {
dataType: "html",
success: function (data, textStatus, jqXHR) {
$("#" + cont).html(data);
$("#" + cont).data("url", url);
$("#navbar-left li").removeClass("active");
return element.parent().addClass("active");
}
});
}
}));
}));
}).call(this);
Но он должен генерировать это:
(function() {
jQuery((function() {
$(".item-scaffold-edit").live("click", (function() {
var cont, element, url;
var _this = this;
element = $(_this);
cont = element.data("cont");
url = element.data("url");
return $.ajax(url, {
dataType: "html",
success: function (data, textStatus, jqXHR) {
$("#" + cont).html(data);
return $("#" + cont).data("url", url);
}
});
}));
return $(".item-menu").live("click", (function() {
var cont, element, url;
var _this = this;
element = $(_this);
cont = element.data("cont");
url = element.data("url");
if (url !== $("#" + cont).data("url")) {
return $.ajax(url, {
dataType: "html",
success: function (data, textStatus, jqXHR) {
$("#" + cont).html(data);
$("#" + cont).data("url", url);
$("#navbar-left li").removeClass("active");
return element.parent().addClass("active");
}
});
}
}));
}));
}).call(this);
Каждый знает, что случилось с моим CoffeeScript код????
Большое спасибо! Задача решена. – user1411274
@ user1411274 Вы можете удалить все лишние фигурные скобки и доверять отступу :) (больно видеть закрытие '))))' hehe) – epidemian
@epidemian Удалено ... hehehehe – user1411274