【问题标题】:node.js variables will not be parsednode.js 变量不会被解析
【发布时间】:2015-03-05 12:38:52
【问题描述】:

我是 node.js 和 express 的新手。

在我的测试应用程序中,不会解析 html 变量。 有什么问题?

server.js

enter var express = require('express');
var bodyParser = require('body-parser');
var app = express();

app.use(bodyParser.urlencoded({
    extended : true
}));

app.use(express.static(__dirname));

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

app.post('/', function(req, res) {
    var wert = req.body.wert;
    var html = 'Hallo: '+wert+'!\n'
    + '<a href="/">Mach\'s nochmal!</a>';
    res.send(html);
});
app.listen(8882);
console.log('Server port: 8882');

index.html:

<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Startseite</title>
</head>
<body>
<p>Hallo <%= wert %>, dies ist mein kleiner Webserver!</p>
<br>
    <form action="/" method="post">
        <input type="text" width="40" name="wert" value="<%= wert %>"> 
        <input type="submit" value="submit">
    </form>
</body>
</html>

视图中的值参数没有被解析。 为什么?怎么办?

谢谢你 喷射

【问题讨论】:

    标签: javascript node.js express server ejs


    【解决方案1】:

    谢谢你,本,

    您的ejs 配置很好。 我必须安装expressejsbody-parser。没关系。 然后我不得不删除app.use(express.static(__dirname));的行

    我不得不改变

    app.set('views', __dirname + '/views');
    
    to 
    app.set('views', __dirname);
    

    我原来的路径。

    然后一切正常!

    好极了 喷射

    【讨论】:

      【解决方案2】:

      Express 默认不附带视图引擎。您需要添加一个,在您的情况下为EJS

      使用命令行,输入:

      npm install ejs
      

      server.js 现在变成:

      var express = require('express');
      var bodyParser = require('body-parser');
      var app = express();
      
      app.engine('.html', require('ejs').__express);
      app.set('views', __dirname + '/views');
      app.set('view engine', 'html');
      app.use(bodyParser.urlencoded({
          extended : true
      }));
      app.use(express.static(__dirname));
      
      app.get('/', function(req, res) {
          res.render('index', {
              wert: 'hallo'
          });
      });
      
      app.post('/', function(req, res) {
          var wert = req.body.wert;
          res.render('index', {
              wert: wert
          });
      });
      app.listen(8882);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-05
        • 1970-01-01
        • 2022-11-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多