Javascript 节点JS require不工作

Javascript 节点JS require不工作,javascript,node.js,Javascript,Node.js,您好,我正在修复此修复程序2-3个小时。。一开始它是有效的,我把我的一些代码移到了另一个文件中,并要求该文件使它更干净,然后boom就不起作用了 require('./mongooschema.js'); console.log(Mesaj); /// SECOND FILE mongooschema.js var mongoose = require('mongoose'); mongoose.connect('mongodb://"""""""/"""""""'); var Sch

您好,我正在修复此修复程序2-3个小时。。一开始它是有效的,我把我的一些代码移到了另一个文件中,并要求该文件使它更干净,然后boom就不起作用了

require('./mongooschema.js');

console.log(Mesaj);


/// SECOND FILE mongooschema.js

var mongoose = require('mongoose');
mongoose.connect('mongodb://"""""""/"""""""');

var Schema = mongoose.Schema;

var mesajSchema = new Schema({
    mesaj: 'String',
    size: 'string'
});

var Mesaj = mongoose.model('Mesaj', mesajSchema);
module.exports = Mesaj;

您需要返回带有
module.exports
的接口

它与其他语言不同,它基本上是在那里扩展文件的内容


如果导出某个内容,则必须要求()才能获取该内容

在这种情况下,你可以这样做

var Mesaj = require('./mongooschema.js');

console.log(Mesaj);
如果您只需要像
require('./mongooschema.js')这样的东西如果不将其分配给某个变量,则将执行所需或导出文件的内容,但导出的内容仍然无法直接访问。所以如果你加上

console.log(Mesaj)
在导出之前,它将被打印出来

var Mesaj = mongoose.model('Mesaj', mesajSchema);
console.log(Mesaj);
module.exports = Mesaj;

require
函数像函数一样工作,它不像其他语言中的
include
指令

因此,要使其发挥作用,您需要:

  • 使用
    module导出所需内容。在
    mongooschema.js
    文件中导出以下内容:

    module.exports = Mesaj
    
  • 在主文件中使用
    require
    函数结果,即
    module.exports
    content

    var Mesaj = require('./mongooschema.js');
    

mongooschema.js是否与当前正在执行的文件位于同一文件夹中?请尝试
console.log(require('./mongooschema.js'))
我尝试了console.log,它确实工作并粘贴了该文件的数据,是的,它位于同一文件夹中。如果
require
不工作,请仔细检查所需文件的名称和路径(尝试从文件中删除.js)require('./mongooschema');仍然相同,我确实需要一个来自同一目录的文件,该目录工作正常..因此我在我包含的文件末尾添加了这一行,但仍然相同..“module.exports=Mesaj;”@SezerYıldız,然后您访问了从
require()
调用返回的文件?