Quindi, fino ad ora, ho creato classi e moduli nel node.jsmodo seguente:
var fs = require('fs');
var animalModule = (function () {
/**
* Constructor initialize object
* @constructor
*/
var Animal = function (name) {
this.name = name;
};
Animal.prototype.print = function () {
console.log('Name is :'+ this.name);
};
return {
Animal: Animal
}
}());
module.exports = animalModule;
Ora con ES6, puoi creare classi "effettive" proprio come questa:
class Animal{
constructor(name){
this.name = name ;
}
print(){
console.log('Name is :'+ this.name);
}
}
Ora, prima di tutto, mi piace questo :) ma solleva una domanda. Come lo usi combinato con node.jsla struttura del modulo di?
Supponiamo che tu abbia una classe in cui desideri utilizzare un modulo a scopo dimostrativo, diciamo che desideri utilizzare fs
quindi crei il tuo file:
Animal.js
var fs = require('fs');
class Animal{
constructor(name){
this.name = name ;
}
print(){
console.log('Name is :'+ this.name);
}
}
Sarebbe questo il modo giusto?
Inoltre, come esponi questa classe ad altri file all'interno del mio progetto nodo? E saresti ancora in grado di estendere questa classe se la utilizzi in un file separato?
Spero che alcuni di voi sapranno rispondere a queste domande :)
animalModuleè piuttosto inutile in un modulo nodo che ha comunque il proprio ambito di modulo.