如何使用节点js创建动态网页?

时间:2018-05-27 20:36:02

标签: node.js

我是节点js的新手。我正在尝试学习节点js。我的问题是我们如何使用节点js创建动态网页?

PHP

<html>
<body>
    <?php .......... ?>
</body>

就像在php中我们可以这样做。我们如何在节点js中做。

2 个答案:

答案 0 :(得分:1)

首先,您将首先安装nodejs framework expressJS

sudo npm install express

例如,假设您要创建表单。

<html>
<body>
<head>
This is a simple form
</head>
<body>
<form action="/" method="POST">
<label for="firstName">First Name:</label>
<input name=firstName">
<br>
<label for="lastName">Last Name:</label>
<input name=lastName">
<br>
<button type="submit">send</button>

这就是服务器端部件的样子

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

var urlencodedParser = bodyParser.urlencoded({ extended: false});

// Set EJS View Engine**
app.set('view engine','ejs');
// Set HTML engine**
app.engine('html', require('ejs').renderFile);
//set directory
app.set('views', __dirname + '/views');
//static folder
app.use(express.static('staticfolder'));


app.get('/form', function(req, res) {
    //open form.html from the views directory
    res.render('form');
});

app.post('/', urlencodedParser, function(req, res) {
    //retrieve first and lastname
    var firstName = req.body.firstName;
    var lastName = req.body.lastName;
    //open submitted.html after the user has submitted the form
    res.render('submitted', {output: req.body.firstName});
});

app.listen(3000);

用户提交表单时将显示的页面。在这种情况下,它被称为submitted.html

<html>
<body>

<p> you have submitted the form </p>
//firstname entered by user
<p> your first name is <%= output %></p>
</body>
</html>

答案 1 :(得分:0)

您需要一个模板来动态更改其内容。 步骤 1:使用 Express Node.JS 框架创建服务器。 第 2 步:使用 EJS(嵌入式 JavaScript)创建模板。 请按照以下说明操作: https://shockoe.com/ideas/development/creating-dynamic-web-pages-ejs/