gpt4 book ai didi

javascript - 从其他文件获取数据库信息

转载 作者:太空宇宙 更新时间:2023-11-03 22:25:36 25 4
gpt4 key购买 nike

我有 3 个不同的文件,名为:app.js、ServerManager.js 和 Users.js。

为了开始一切,我运行 app.js,它运行我的 ServerManager。

在 App.js 中运行 ServerManager:

var ServerManager = require('./modules/ServerManager.js');
var serverManager = new ServerManager({
app: app,
path: __dirname
});

然后调用 serverManager,我可以在那里做一些事情,然后我尝试从 ServerManager 向 Users.js 发送内容,但似乎不起作用。

服务器管理器.js

var config = require('../config.js');
var express = require('express');
var colors = require('colors');

var DatabaseManager = require('../modules/DatabaseManager.js');
var RouteManager = require('../modules/RouteManager.js');
var Users = require('../data/users.js');

module.exports = function(options){
return new ServerManager(options);
}

var ServerManager = function (options) {
var self = this;
this.app = options.app;
this.options = options;

this.dbManager = new DatabaseManager();
this.dbManager.use();
this.RoutesManager = new RouteManager(this.app);
this.RoutesManager.use();


this.usersManager = new Users(this);
}

ServerManager.prototype.getDatabase = function () {
return this.dbManager();
}

Users.js - 在代码中标记找不到的内容。

module.exports = function (ServerManager) {
return new Users(ServerManager);
};

var Users = function (ServerManager) {
var self = this;
this.serverManager = ServerManager;
};

Users.prototype.createUser = function (username, email, password) {
this.serverManager.getDatabase(); <--- Can't find getDatabase()
};

最佳答案

我认为您应该将您的 Users.js 代码更改为:

// This is the Users object
// and this function is its constructor
// that can create users instances
var Users = function (ServerManager) {
var self = this; this.serverManager = ServerManager;
};

// We define a method for the user object
Users.prototype.createUser = function (username, email, password) {
this.serverManager.getDatabase();
};

// We export the user object
module.exports = Users;

现在你就做

var Users = require('../data/users.js');

您获得了 User 对象。因此,您可以执行new Users(...)

必须对 ServerManager 执行相同的操作。

如果您想按原样使用代码,则不必在导入的对象上使用 new 关键字。

关于javascript - 从其他文件获取数据库信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47126597/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com