html – 使用Node.js提供动态网页

html – 使用Node.js提供动态网页,第1张

概述我很难理解node.js究竟是如何为动态内容提供服务的. 所以我们假设我们有以下代码来呈现主页: var express = require('express'), app = express();app.get('/', function(req,res){ res.render('home.html');}); 但是,假设这个主页应该是一个用户配置文件,您在其中从数据库中 我很难理解node.Js究竟是如何为动态内容提供服务的.
所以我们假设我们有以下代码来呈现主页:
var express = require('express'),app = express();app.get('/',function(req,res){    res.render('home.HTML');});

但是,假设这个主页应该是一个用户配置文件,您在其中从数据库中提取用户信息,从而产生代码:

var express = require('express'),mongoose = require('mongoose'),app = express();mongoose.connect('mongodb://localhost/ExampleDB');app.get('/:ID',res){    User.findOne({_ID: req.ID},function (err,user){       var name = user.name;       var profilePic_uri = user.profilePic_uri;       res.render('home.HTML');});

因此,理想情况下,home.HTML只是一个模板页面,您可以在路径处理程序中设置用户的个人资料图片,他们的名字等.是的,因为节点背后的想法是,这个app.Js应该能够处理在运行时从数据库中提取动态内容.我遇到麻烦的地方是了解如何使用节点精确渲染动态页面. HTML页面是一个静态页面.你不能真正渲染一个PHP或一个asp页面,因为,这真的没有意义吗?

这让我想到了问题,它是如何完成的?

解决方法 如果你添加…
app.set('vIEws',path.join(__dirname,'vIEws'));app.set('vIEw engine','jade');

…在app = express()完成后,如果不使用扩展,它现在将默认为Jade渲染引擎.然后在你的路由器:

app.get('/',res){  res.render('home',{    var1: 'val1',var2: 'val2'  });});

您需要将Jade添加到项目的依赖项中的package.Json文件中:

"jade": "~1.9.1",

…然后在你的文件夹中“npm install”将其带入.

然后你需要一个名为/vIEws/home.jade的文件,内容如下:

DOCTYPE HTMLHTML  body    p Var1 is #{var1}    p Var2 is #{var2}

您应该看到 – 当您访问主页时 – 这些值已经传递给Jade渲染引擎并分别在模板中作为“val1”和“val2”进行了扩展.

总结

以上是内存溢出为你收集整理的html – 使用Node.js提供动态网页全部内容,希望文章能够帮你解决html – 使用Node.js提供动态网页所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1136767.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存