// ejs-demo.js
var http = require('http');
var ejs = require('ejs');
var url = require('url'); // 搭建 HTTP 服务器
var server = http.createServer(function(req, res) {
var urlObj = url.parse(req.url, true);
switch (urlObj.pathname) {
case '':
case '/':
showDemo(req, res);
break;
case '/header':
showHeader(req, res);
break;
}
}).listen(8002);
console.log('Server running at http://127.0.0.1:8002/'); //show demo
var showDemo = function(req, res){
var users = ['郭建国', '刘幸福', '张富强', '王大宝', '李钢蛋'];
ejs.renderFile('./view/demo.ejs', { users: users }, function(err, str) {
if (err) {
console.log(err);
} else {
res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
res.write(str);
res.end();
}
});
} //show header
var showHeader = function(req, res){
var users = ['a','b'];
ejs.renderFile('./view/common-header.ejs', { users: users }, function(err, str) {
if (err) {
console.log(err);
} else {
res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
res.write(str);
res.end();
}
});
}
//demo.ejs
<body> <%- include('./common-header.ejs'); %>
<h1>关于我</h1> <ul>
<% for(var i = 0; i < users.length; i++) { %>
<% var user = users[i]; %>
<li><%= user %></li>
<% } %>
</ul>
</body>
 
//common-header.ejs
<header>
<a href="/">我的网站</a>
<nav>
<li><a href="aboutme">关于我</a></li>
<li><a href="projects">项目介绍</a></li>
<li><a href="blog">个人博客</a></li>
</nav>
</header>
 
 
 
 
 

nodejs http ejs的更多相关文章

  1. nodejs+express+ejs+mongoose实例

    nodejs+express+ejs+mongoose实例 nodejs学得异常痛苦,在这里将学的东西做一番整理,算是自我安慰吧.根据网上todo示例,用express和mongoose重写了部分代码 ...

  2. 用nodejs,express,ejs,mongo,extjs实现了简单了网站后台管理系统

    源代码下载地址:http://download.csdn.net/detail/guoyongrong/6498611 这个系统其实是出于学习nodejs的目的而改写的系统. 原来的系统前端使用了ex ...

  3. Windows环境下,从零开始搭建Nodejs+Express+Ejs框架(二)---安装Express,ejs

    安装Express,ejs的前提是一定要先安装nodejs,具体安装方法请查看 http://www.cnblogs.com/tfiremeteor/p/8973105.html 安装Express和 ...

  4. Nodejs + express + ejs

    特性 <% %> 用于控制流 <%= %> 用于转义的输出 (会对数据字符进行转义) // 数据源 // app.js var tem={ title:"我是中间部分 ...

  5. nodejs创建ejs工程

    <Node.js开发指南>创建ejs项目的命令为: express -t ejs microblog.执行后,创建的是jade项目.在express3.x,express4.x中创建ejs ...

  6. Windows环境下,从零开始搭建Nodejs+Express+Ejs框架(一)---安装nodejs

    第一步,安装nodejs https://nodejs.org/en/download/ 这个是nodejs的官网,由于操作系统是win7 64位的,所以,我下载的是node-v8.11.1-x64的 ...

  7. Nodejs + express + ejs 之服务器demo

    var http=require("http"); var express=require("express"); var fs = require(" ...

  8. nodejs学习笔记

    这里有一段废话,我写了又删,删了又写,反复了十来次,最后还是把它删除了.不用想了,那是一段牢骚话兼有煽情意思. 好了,还是把我学习nodejs的笔记记录下来吧,一来复习巩固,加深印象,二来自己实践中出 ...

  9. Nodejs学习笔记(七)--- Node.js + Express 构建网站简单示例

    目录 前言 新建项目.建立数据库以及其它准备工作 新建express + ejs 项目:sampleEjs 创建数据库 修改package.json文件,安装session和mysql模块 样式和JQ ...

随机推荐

  1. 由dubbo开始看看所谓的软负载均衡

    待总结 我们在微服务架构中,常用一些注册中心进行订阅消费我们的服务,这时候对于同一服务请求会有不同的机器同时可以提供服务,这时是怎么选择哪一台机器去连接获取服务呢? 负载均衡设备作为纵跨网络2/7层交 ...

  2. python颜色

    # python终端显示彩色字符类,可以调用不同的方法# 选择不同的颜色.使用方法看示例代码就很容易明白.# --------------------------------------------- ...

  3. akka-stream之异常处理

    背景介绍 在项目中使用了akk-stream的source.queue功能,如下: Pair<SourceQueueWithComplete<Integer>, Source< ...

  4. jp@gc - Stepping Thread Group (deprecated)

      并发6个用户,线程之前不等待,每隔3秒增加1个用户,间隔时间是2秒,然后并发数增加完成之后,运行60秒,运行完成后,每1秒钟停止2个用户

  5. Aggregate report 聚合报告

  6. C语言实现 冒泡排序 选择排序 希尔排序

    // 冒泡排序 // 选择排序 // 希尔排序 // 快速排序 // 递归排序 // 堆排序 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h& ...

  7. docker Dockerfile学习---构建redis环境

    1.创建项目目录并下载包及文件 mkdir centos_redis cd centos_redis wget http://download.redis.io/releases/redis-5.0. ...

  8. strcmp 的坑

    根据百度百科的:http://baike.baidu.com/view/1026924.htm 函数简介 原型:extern int strcmp(const char *s1,const char ...

  9. 关闭swap

    #(1)临时关闭swap分区, 重启失效;   swapoff  -a #(2)永久关闭swap分区 sed -ri 's/.*swap.*/#&/' /etc/fstab

  10. python_django_template_url反向解析

    什么是url反向解析? 一般我们网址在diango内部匹配顺序为:网址→ url → views →  templates → <a href="suck/good/"> ...