CoffeeScript 和 NodeJS:如何导出多个类



我想导出一些类,比如DogCat。一种方法是:

class Dog
  bark: -> console.log "Arff! :D"
class Cat
  meaow: -> console.log "Meaw!"

module.exports = {Dog, Cat}

如何在不键入类名两次的情况下执行类似操作?

你可以使用这样的东西:

class exports.Dog
  bark: -> console.log "Arff! :D"

这将编译为:

exports.Dog = (function() {
  function Dog() {}
  Dog.prototype.bark = function() {
    return console.log("Arff! :D");
  };
  return Dog;
})();

另一种方法是执行以下操作:

module.exports = 
   Dog: class Dog
          bark: -> console.log "Arff! :D"
   Cat: class Cat
         meaow: -> console.log "Meaw!"

然后,您可以执行以下操作:

animals = require './animals'
dog = new Animals.dog()
通常,

我想要一个局部变量(所以我不必一直键入exports.x)和一个导出变量(所以我不必在最后一次定义所有导出),所以我执行以下操作:

exports.dog = class Dog
  bark: ->
exports.cat = class Cat
  meow: ->

最新更新