2012-06-15 1 views

Répondre

9

oui vous pouvez utiliser une javascript bibliothèque coffeescript, il suffit d'inclure le répertoire lib de la manière habituelle et écrivez votre code dans le « style » coffeescript, donc pour un exemple jquery:

$(function() { 
    $('.something').on('click', function() { 
     console.log('you clicked me'); 
    }); 
}); 

devient

$ -> 
    $(".button").on "click", -> 
     console.log('you clicked me'); 

Un google rapide a trouvé quelques blogs inerestants sur le sujet, coffeescript & jquery fun et using jquery with coffeescript.

Il y a aussi un pragmantic programmer book avec un chapitre axé sur l'utilisation de jquery et la colonne vertébrale dans les applications CoffeeScript

N.B. comme indiqué, rappelez-vous que le 'compilateur' coffeescript ne vérifie pas que les fonctions existent, seulement que la syntaxe est correcte

5

Vous pouvez utiliser jQuery et les fonctions JavaScript natives. Vous devez simplement les écrire dans la bonne syntaxe CoffeeScript. Gardez à l'esprit que CoffeeScript est un compilateur source vers source.

Il va transpile CoffeeScript en JavaScript. Il ne saura pas si des fonctions spécifiées existent.

Donc, si vous avez écrit ce CoffeeScript, il rassemblerait très bien:

words = ["hello", "world"] 
alert word.touppercase() for word in words 

Notez que touppercase() n'est pas défini en JavaScript. Il devrait être toUpperCase(). Néanmoins, CoffeeScript affichera:

var word, words, _i, _len; 

words = ["hello", "world"]; 

for (_i = 0, _len = words.length; _i < _len; _i++) { 
    word = words[_i]; 
    alert(word.touppercase()); 
} 

alors vous lancer dans l'erreur comme une erreur JavaScript une fois que vous avez exécuté dans votre navigateur, pas une erreur CoffeeScript. Vous pouvez utiliser le lien "Try CoffeeScript" sur CoffeeScript site pour voir comment la traduction a lieu et essayer de l'exécuter. Vous pouvez également l'essayer en jsFiddle en changeant l'option Panneaux pour utiliser CoffeeScript au lieu de JavaScript.

2

CoffeeScript est JavaScript.

Ou plutôt, plus précisément, le seul but de CoffeeScript est de rendre l'écriture de JavaScript plus facile et plus «propre». Tout le code CoffeeScript que vous écrivez est compilé en Javascript. Le compilateur CoffeeScript vérifie uniquement la syntaxe de votre code. Il ne s'inquiète jamais de vérifier et de voir si les variables et les fonctions que vous référencez existent réellement (ce serait impossible à faire avec exécutant le fichier de toute façon). Donc, vous pouvez certainement appeler des fonctions JavaScript "natives" avec votre code CoffeeScript mais c'est simple car elles sortent de l'autre côté comme de simples appels de fonction JavaScript.

0

Vous pouvez également utiliser javascript dans votre café.Tout ce que vous devez faire est d'utiliser dos-tiques:

hello = `function() {console.log("hello")}` 

Cependant, il n'y a presque jamais une bonne raison de le faire. Bien qu'il existe un scénario où cela est utile, c'est la réutilisation du même nom de variable dans les fonctions imbriquées.

Par exemple:

parent = -> 
    outer = 2 

    changeOuter = -> 
    `var outer` ##scopes outer to changeOuter 
    outer = 1 

    changeOuter() 

    return outer ##returns 2 but would have returned 1 
        ##if we did not re-scope the varibale 
Questions connexes