mean.js 使用 require 而不使用 var
mean.js uses require without var
对 yeoman 的默认 meanjs 应用有疑问。
在 express.js 文件中有如下语句:
// Globbing model files
config.getGlobbedFiles('./app/models/**/*.js').forEach(function(modelPath) {
require(path.resolve(modelPath));
});
现在我明白它获取路径“./app/models/”中的所有.js文件,但我想了解的是单独站立
require(path.resolve(modelPath));
如何在未将其设置为 "var" 的情况下使用 require 函数?
这些包含文件之一的示例如下:
'use strict';
/**
* Module dependencies.
*/
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
/**
* Article Schema
*/
var ArticleSchema = new Schema({
created: {
type: Date,
default: Date.now
},
title: {
type: String,
default: '',
trim: true,
required: 'Title cannot be blank'
},
content: {
type: String,
default: '',
trim: true
},
user: {
type: Schema.ObjectId,
ref: 'User'
}
});
mongoose.model('Article', ArticleSchema);
此文件没有公开任何内容。
那么为什么用 "var" 调用 require 而没有公开函数的内容?
这将如何允许以后使用内容?
express.js 文件中的代码执行模型文件的内容。 MEAN.js 模型文件的结构如下;
加载 mongoose 和 schema 包,以及所有包含的包
模型(如果有)。
声明给定模型的架构
在模型名称下注册给定的模式(给定示例的文章)。
return 没有任何内容,因此 express.js 文件中缺少任何变量赋值。从现在开始,您可以通过您在第三部分中分配的标签来调用模型。因此,在您的控制器中,您可以编写类似;
var articles = Article.query();
这行代码将加载 Article 架构和 运行 后端提供的 query() 方法(默认情况下 return 是数据库中的所有实例模型)。
总的来说,记住;并非所有功能 return 东西。
对 yeoman 的默认 meanjs 应用有疑问。
在 express.js 文件中有如下语句:
// Globbing model files
config.getGlobbedFiles('./app/models/**/*.js').forEach(function(modelPath) {
require(path.resolve(modelPath));
});
现在我明白它获取路径“./app/models/”中的所有.js文件,但我想了解的是单独站立
require(path.resolve(modelPath));
如何在未将其设置为 "var" 的情况下使用 require 函数?
这些包含文件之一的示例如下:
'use strict';
/**
* Module dependencies.
*/
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
/**
* Article Schema
*/
var ArticleSchema = new Schema({
created: {
type: Date,
default: Date.now
},
title: {
type: String,
default: '',
trim: true,
required: 'Title cannot be blank'
},
content: {
type: String,
default: '',
trim: true
},
user: {
type: Schema.ObjectId,
ref: 'User'
}
});
mongoose.model('Article', ArticleSchema);
此文件没有公开任何内容。
那么为什么用 "var" 调用 require 而没有公开函数的内容?
这将如何允许以后使用内容?
express.js 文件中的代码执行模型文件的内容。 MEAN.js 模型文件的结构如下;
加载 mongoose 和 schema 包,以及所有包含的包 模型(如果有)。
声明给定模型的架构
在模型名称下注册给定的模式(给定示例的文章)。
return 没有任何内容,因此 express.js 文件中缺少任何变量赋值。从现在开始,您可以通过您在第三部分中分配的标签来调用模型。因此,在您的控制器中,您可以编写类似;
var articles = Article.query();
这行代码将加载 Article 架构和 运行 后端提供的 query() 方法(默认情况下 return 是数据库中的所有实例模型)。
总的来说,记住;并非所有功能 return 东西。