Node.js 节点要求-i不';我不懂这个代码
我开始学习node.js和mongoose,我不理解下面的代码 我有两个文件:app.js和idea.js app.js idea.js 当我运行app.js时,没有发生错误。怎么可能呢?我没有从idea.js文件导出任何内容!Node.js 节点要求-i不';我不懂这个代码,node.js,mongoose,Node.js,Mongoose,我开始学习node.js和mongoose,我不理解下面的代码 我有两个文件:app.js和idea.js app.js idea.js 当我运行app.js时,没有发生错误。怎么可能呢?我没有从idea.js文件导出任何内容! app.js文件是如何访问ideas模型的?require被缓存。那么这个, let obj1 = require('an_object'); let obj2 = require('an_object'); 将在第一行中加载对象,并在第二行中从缓存中返回相同的对象。
app.js文件是如何访问ideas模型的?
require
被缓存。那么这个,
let obj1 = require('an_object');
let obj2 = require('an_object');
将在第一行中加载对象,并在第二行中从缓存中返回相同的对象。即使这两个需求在不同的文件中,这也适用。由于obj1
和obj2
是对同一对象的引用,如果obj1
被修改,obj2
也会被修改(因为它们是一个相同的对象)
你们并没有从想法中导出任何东西,但这并不重要;Idea的目的是修改猫鼬对象,而不是返回任何东西
简化:
// storage.js
exports.hello = 'Mumble mumble';
// mod_storage.js
let modding_storage = require('./storage');
modding_storage.hello = "Hello, world!";
// main.js
let main_storage = require('./storage');
require('./mod_storage');
console.log(main_storage.hello);
// => Hello, world!
mod_存储
已更改modd_存储
,但modd_存储
与主_存储
是同一对象;更改一个,两个都更改。要求('./models/Idea')
将加载(并运行)Idea.js
,我假设(我不熟悉mongoose)mongoose1.model('ideas',IdeaSchema)注册IdeaSchema
对象,然后使用const Idea=mongoose.model('ideas')
let obj1 = require('an_object');
let obj2 = require('an_object');
// storage.js
exports.hello = 'Mumble mumble';
// mod_storage.js
let modding_storage = require('./storage');
modding_storage.hello = "Hello, world!";
// main.js
let main_storage = require('./storage');
require('./mod_storage');
console.log(main_storage.hello);
// => Hello, world!