我正在使用node.js开发。我有一堆相关的类要粘贴在子目录中,子目录中每个文件有一个类,其结构如下:

 lib/
   main.js
   melons/
     casaba.js
     canteloupe.js
     carnegie.js


并像这样在我的主文件中使用它们:

var Melons = require('./melons/');
var m1 = new Melons.Casaba();
var m2 = new Melons.Canteloupe();
var m3 = new Melons.Carnegie();


我认为我需要一个melons / index.js文件,但不清楚其中包含什么。有任何想法吗?

最佳答案

是的,您需要创建melons/index.js,其结构如下:

// file: melons/index.js
module.exports = {
  Casaba: require('./casaba'),
  Canteloupe: require('./canteloupe'),
  Carnegie: require('./carnegie'),
};


确保子目录中的每个文件都有一个module.exports分配,例如:

// file: melons/casaba.js
'use strict';

function Casaba() {}
Casaba.prototype.constructor = Casaba;

module.exports = Casaba;


我认为这是一种习惯上合适的解决方案,但是如果有更好的方法,请告诉我...

10-05 18:31