模块的节点 js 包

Node js packages for modules

本文关键字:js 节点 模块      更新时间:2023-09-26

描述: 我有一个节点js项目,我有包模型(其中包含带有我的模型对象的模块),有路由包(其中存储了路由处理程序函数的模块)以及具有"快速"配置和http服务器的应用程序.js文件。

问题是:如何将模型对象从模型包导入路由包、索引.js模块?

索引.js:

var ArticleProvider = require('smth goes here').ArticleProvider;
var articleProvider= new ArticleProvider();
exports.index = function(req, res){
    articleProvider.findAll(function(error, docs){
        //console.log(error)
        res.send(docs);
  });
};

我的模型.js

ArticleProvider = function(){};
ArticleProvider.prototype.dummyData = [];
ArticleProvider.prototype.findAll = function(callback){
    callback(null, this.dummyData);
};
ArticleProvider.prototype.save = function(articles, callback) {
    var article = null;
    if (typeof(articles.length) == "undefined") { articles = [articles]; }
    //callback();
};
exports.ArticleProvider = ArticleProvider;

注意:我可以从底层导入任何内容(例如:如果我在路由包中具有模型包。例: require("./models/mymodel.js") )。

解决方案是

var ArticleProvider = require('../models/articleprovider.js').ArticleProvider;

看看npm链接 https://npmjs.org/doc/link.html

它允许您将包作为依赖项构建到node_modules中,然后您可以在任何您想要的地方需要它