J'ai créé une classe CoffeeScript avec une méthode et son alias :
class Class1
method1 : (param1)=>
console.log param1
aliasForMethod1: @method1
module.exports = Class1
Il produit du javascript :
// Generated by CoffeeScript 1.6.2
(function() {
var Class1,
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
Class1 = (function() {
function Class1() {
this.method1 = __bind(this.method1, this);
}
Class1.prototype.method1 = function(param1) {
return console.log(param1);
};
Class1.prototype.aliasForMethod1 = Class1.method1;
return Class1;
})();
module.exports = Class1;
}).call(this);
Essayez d'utiliser cette classe :
Class1 = require './class1'
instanceOfClass1 = new Class1()
instanceOfClass1.method1()
instanceOfClass1.aliasForMethod1()
Mais j'ai eu une erreur :
$ node /pathToMyClassUser/class1_user.js
undefined
/pathToMyClassUser/class1_user.js:11
instanceOfClass1.aliasForMethod1();
^
TypeError: Property 'aliasForMethod1' of object #<Class1> is not a function
Alors comment utiliser un alias Méthode for dans la classe CoffeeScript ?