javascript - 在javascript中定义对象

标签 javascript node.js pug

我用express和jade编写了一些求和3个数字的脚本...

在index.jade上我有3个字段和提交按钮:

!!! 5
html
  head
    title Test
  body
    form(name='form1', method='post', action='')
      label(for='1')
      input#1(type='text', name='1')
      label(for='2')
      input#2(type='text', name='2')
      label(for='3')
      input#3(type='text', name='3')
      input(name='submit', type='button', value='submit') 
    span #{result}

在服务器端(js代码-node.js)我有这个代码:

var express = require('express');
        app = express.createServer();

app.configure(function(){
    app.set('views', __dirname + '/views');
    app.set('view engine', 'jade');
    app.use(express.bodyParser());
    app.use(express.methodOverride());
    app.use(app.router);
    app.use(express.static(__dirname + '/public'));
});
app.use(express.bodyParser());
    app.get('/', function(req, res){
     res.render('index');
    });


    app.post('/', function(req, res){
      var i = req.param('1', null);
      var j = req.param('2', null);
      var k = req.param('3', null);
      var r = i+j+k;
      res.render('index', {result:r});

    });
app.listen(3010);

但每次我通过 Node app.js 启动 js 文件时,我都会收到消息,表明该对象未定义,并且 jade 文件中存在一些错误:

如何在app.js文件中定义对象?

错误:

ReferenceError: C:\Users\PC\glowing-frost-5319/views/index.jade:14
    12. '      input#3(type=\'text', name='3')
'
    13. '      input(name=\'submit', type='button', value='submit') 
'
    14. '    #{result}'

result is not defined
    at Object.<anonymous> (eval at <anonym... etc.

谁能告诉我如何定义对象结果以及如何在index.jade页面上显示?

最佳答案

我认为您需要将第二个参数中的结果传递给 get 路由中的渲染方法(就像您已经在 post 路由中所做的那样)。

试试这个:

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

这将使 result 变量在您的 View 中可用(在此示例中值为空字符串)。

关于javascript - 在javascript中定义对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10743551/

相关文章:

Javascript:3秒后启用页面上的所有提交按钮

node.js - E/启动器 - 进程已退出,错误代码为 135

javascript - 如何使用 Express 和 MySQL 将 SQL 查询的结果插入到 Pug 模板中?

node.js - 哈巴狗图像作为链接

javascript - jquery滑动动画

javascript - stuff.className.indexOf ("term") == 1 不工作

javascript - 如何在javascript中的for循环中显示对象值

node.js - 使用 Mongoose 将文档嵌入表单中

javascript - 在 JS 或 Rails 中自动缩短 URL

node.js - Mongoose – 将对象相互链接而不重复