当前位置: 首页 > 面试题库 >

如何将变量从玉模板文件传递到脚本文件?

吕亮
2023-03-14
问题内容

我在未传递到javascript文件的玉模板文件(index.jade)中声明的变量(config)遇到问题,这使我的javascript崩溃了。这是文件(views
/ index.jade):

h1 #{title}

script(src='./socket.io/socket.io.js')
script(type='text/javascript')
  var config = {};
  config.address = '#{address}';
  config.port = '#{port}';
script(src='./javascripts/app.js')

这是我的app.js(服务器端)的一部分:

  app.use(express.bodyParser());
  app.use(express.methodOverride());
  app.use(app.router);
  app.use(express.static(__dirname + '/public'));
});

app.configure('development', function(){
  app.set('address', 'localhost');
  app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});

app.configure('production', function(){
  app.use(express.errorHandler());
});

// Routes

app.get('/', function(req, res){
  res.render('index', {
    address: app.settings.address,
    port: app.settings.port
});
});

if (!module.parent) {
  app.listen(app.settings.port);
  console.log("Server listening on port %d",
app.settings.port);
}

// Start my Socket.io app and pass in the socket
require('./socketapp').start(io.listen(app));

这是我的javascript文件崩溃的一部分(public / javascripts / app.js):

(function() {
        var socket = new io.Socket(config.address, {port: config.port, rememberTransport: false});

我正在本地主机(我自己的机器)上的开发模式(NODE_ENV = development)上运行站点。我正在使用node-
inspector进行调试,它告诉我config变量在public / javascripts / app.js中未定义。

有任何想法吗??谢谢!!


问题答案:

这是一个 有点 晚了,但…

script.
  loginName="#{login}";

在我的脚本中,这工作正常。在Express中,我正在这样做:

exports.index = function(req, res){
  res.render( 'index',  { layout:false, login: req.session.login } );
};

我猜最新的玉是不同的吗?

Merc。

编辑:添加了“。” 脚本后,以防止翡翠警告。



 类似资料:
  • 问题内容: 我有一个bash脚本a.sh,其中有一个python脚本b.py。python脚本计算某些内容,我希望它返回一个值,该值稍后将在a.sh中使用。我知道我能做 在a.sh中: 在b.py中: 但这不是那么方便,因为我还在b.py中打印了其他消息 有什么更好的方法吗? 编辑: 我现在正在做的只是 这意味着我可以在b.py中打印很多东西,但是只有最后一行(假设它不包含“ \ n”,这是最后一

  • 问题内容: 我有一个调用file.sql的shell脚本 我正在寻找一种将一些参数传递给我的file.sql的方法。 如果我没有将具有某个值的变量传递给sql脚本,则将不得不使用SELECT语句创建多个.sql文件,并且所有更改将只需要几个字即可。 我的shell脚本调用file.sql: 这就是我的file.sql的样子: 我可以修改我的shell脚本,以便它传递变量名吗? 即:模型=“建筑”,

  • 开头是我的jsp页面代码: 我想从

  • 我想在Postman中参数化我的测试。这是POST请求的示例正文:

  • 如何让bash脚本查看设置在.env和/或docker-compose-yaml中的env变量? . env docker-compose.yml entrypoint.sh

  • 我有这样一个shell脚本(在/usr/local/bin/esm script/import master.php中): 现在我通过这样的PHP脚本调用它: 但是,当我运行PHP代码时,我会在浏览器上看到以下消息: 我不是一个编写shell脚本的人,所以我不知道我是否遗漏了什么。 我检查了带有sql文件的文件夹是否具有正确的权限(775)和数据(插入语句)。 那么为什么这不起作用呢?非常感谢您的