Node.js 我在其中创建或修改视图(ejs)的全局变量
我需要修改变量“Node.js 我在其中创建或修改视图(ejs)的全局变量,node.js,express,sails.js,ejs,Node.js,Express,Sails.js,Ejs,我需要修改变量“”,但我不知道他们在哪里创建变量,也不知道我可以在哪里更改它 我想知道在视图中可以找到其他全局变量,例如我没有在视图中发送的变量,但由于某些原因已经在视图中了。在“快车”中,它感动了我,让我做了如下事情: res.render('session/new',{title:“登录”,session:req.session});“ 所以我想知道他们在哪里创建了“session”变量,因为我不喜欢在不知道XD的情况下去那里 非常感谢您的帮助。我将尝试回答您关于Sails.js中局部/全局
”,但我不知道他们在哪里创建变量,也不知道我可以在哪里更改它
我想知道在视图中可以找到其他全局变量,例如我没有在视图中发送的变量,但由于某些原因已经在视图中了。在“快车”中,它感动了我,让我做了如下事情:
res.render('session/new',{title:“登录”,session:req.session});
“
所以我想知道他们在哪里创建了“session”变量,因为我不喜欢在不知道XD的情况下去那里
非常感谢您的帮助。我将尝试回答您关于Sails.js中局部/全局变量的一些问题 局部变量 Sails.js构建在ExpressJS之上,并使用相同技术的mutch将数据发送到视图。例如,要将局部变量发送到上下文中的视图,请执行以下操作: 在控制器中:
newSession: function(req, res, next) {
res.view('session/new', {
title: "Log in",
session: req.session
});
});
全局变量
Sails.js已经有一些全局变量<代码>标题可能是其中之一。例如,sails
是一个全局变量。您可以将自己的自定义变量附加到该变量。为此:
- 在配置文件夹中创建一个新文件李>
- 可以随意命名,并使用module.exports约定
config/myGlobals.js
文件中:
module.exports.myGlobalVariables = {
globalOne: "This is a string",
globalTwo: function(){ return "myGlobal"; }
}
现在,您可以使用以下方式在所有控制器/视图中访问这些变量:
sails.config.myGlobalVariables.globalOne; //returns: This is a string
sails.config.myGlobalVariables.globalTwo; //returns: myGlobal
我将尝试回答您关于Sails.js中局部/全局变量的一些问题 局部变量 Sails.js构建在ExpressJS之上,并使用相同技术的mutch将数据发送到视图。例如,要将局部变量发送到上下文中的视图,请执行以下操作: 在控制器中:
newSession: function(req, res, next) {
res.view('session/new', {
title: "Log in",
session: req.session
});
});
全局变量
Sails.js已经有一些全局变量<代码>标题可能是其中之一。例如,sails
是一个全局变量。您可以将自己的自定义变量附加到该变量。为此:
- 在配置文件夹中创建一个新文件李>
- 可以随意命名,并使用module.exports约定
config/myGlobals.js
文件中:
module.exports.myGlobalVariables = {
globalOne: "This is a string",
globalTwo: function(){ return "myGlobal"; }
}
现在,您可以使用以下方式在所有控制器/视图中访问这些变量:
sails.config.myGlobalVariables.globalOne; //returns: This is a string
sails.config.myGlobalVariables.globalTwo; //returns: myGlobal
您使用的是哪个版本的sails.js?如果我把
放在.ejs文件中,我就没有定义。我使用的是0.9版。变量“title”用在layout.ejs中,在页面的标题中,好的。这就解释了,我使用的是0.10版。可能在最新版本中删除了该全局变量。可能与您使用的sails.js版本重复?如果我把
放在.ejs文件中,我就没有定义。我使用的是0.9版。变量“title”用在layout.ejs中,在页面的标题中,好的。这就解释了,我使用的是0.10版。可能在最新版本中删除了该全局变量。该变量的可能副本非常有用,@aludvigsen。但是,在创建config/myGlobals.js文件之后,如何在views/layout.ejs中使用sails.config.myGlobalVariables.globalOne?这非常有用,@aludvigsen。但是,在创建config/myGlobals.js文件之后,如何在views/layout.ejs中使用sails.config.myGlobalVariables.globalOne?