欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

基于express的简单留言板

程序员文章站 2022-06-01 09:27:46
...

创建一个express helloworld

  • 创建一个空白文件夹
  • npm init -y
  • npm i express -S
  • 在app.js中
// An highlighted block
var express=require('express');
var app=express();

app.get('/',(req,res)=>{
   res.send('hello world')
})

app.listen(3000)

使用nodemon工具自动重启服务

npm install nodemon -g

安装完毕后 使用

nodemon app.js

每次在文件被修改保存后服务会自动重启

express 加载静态资源

//当以/public/开头的时候,去./public目录中找对应资源   开放了./public目录下的所有资源
app.use('/public/',express.static('public'))

在express中使用art-template模板引擎

  • 安装
npm i -S art-template express-art-template
  • 配置
//  第一个参数表示当渲染以.html后缀文件时,使用art-template模板引擎
app.engine('html', require('express-art-template'));
//express有个约定,开发人员视图文件都放到views目录下
//当需要修改文件路径时,需要以下配置,第一个参数不可改动
app.set('views', path.join(__dirname, 'views'));

示例

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

var list=[{
	name:'张三',
	content:'我是张三',
	datetime:'2018-9-9 21:11:00'
},
{
	name:'张三1',
	content:'我是张三1',
	datetime:'2018-9-9 21:11:00'
},{
	name:'张三2',
	content:'我是张三2',
	datetime:'2018-9-9 21:11:00'
},{
	name:'张三3',
	content:'我是张三3',
	datetime:'2018-9-9 21:11:00'
},{
	name:'张三4',
	content:'我是张三4',
	datetime:'2018-9-9 21:11:00'
},
]
app.use('/res/',express.static('./res/'))
app.engine('html',require('express-art-template'))

app.get('/',(req,res)=>{
	res.render('list.html',{list})  //这里的路径基于view目录
})
app.get('/write.html',(req,res)=>{
	res.render('write.html')
})

app.listen(3000)

node中get方法获取参数

app.get('/getData',(req,res)=>{
	var comm=req.query;  //获取参数
	comm.datetime='2019-3-3 00:00:00'
	list.unshift(comm)
	res.redirect('/') //重定向
})

express中post方法获取参数

使用中间件 body-parser

  • 安装
npm install body-parser -S
  • 配置和使用
//1.引包
var bodyParser = require('body-parser')
//2.配置
app.use(bodyParser.urlencoded({ extended: false }))
// parse application/json
app.use(bodyParser.json())
//3.使用
app.post('/getData',(req,res)=>{
	var comm=req.body;   //req.body获取参数
	comm.datetime='2019-3-3 00:00:00'
	list.unshift(comm)
	res.redirect('/')
})

链接: 我的留言板github.

相关标签: express