var express = require('express');引入express框架
var router = express.Router();引入router路由级中间件
var data = require("../data");引入data文件
var url = require("url");引入url模块
var fs = require('fs');引入fs模块
var qs = require("querystring");查询字符串
/* GET home page. */
 
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
 
router.get("/data",(req,res)=>{
    res.json(data);
})
 
增加
router.get("/add*",(req,res)=>{
    var obj = url.parse(req.url,true);拆分字符串
    data.list.push(obj.query.item);
    fs.writeFileSync("./data.json",JSON.stringify(data));
    res.redirect("/"); 重定向
})
 
删除
router.get("/del/:id",(req,res)=>{
    data.list.splice(req.params.id,1);
    fs.writeFileSync("./data.json",JSON.stringify(data));
    res.redirect("/"); 重定向
})
 
修改
router.get("/modify/:id",(req,res)=>{
    var id = req.params.id;
    var xm = data.list[id];
    res.redirect("/modify.html?"+qs.stringify({id:id,xm:xm})) 重定向
})
router.get("/modifyok*",(req,res)=>{
    var obj=url.parse(req.url,true);
    data.list[obj.query.id]=obj.query.xm;
    fs.writeFileSync("./data.json",JSON.stringify(data));
    res.redirect("/"); 重定向
})
 
查询
router.get("/query/:kw?",(req,res)=>{
    var list = data.list.filter((item)=>{
        return item.includes(req.params.kw);
    })
    res.render("query",{
        list:list
    })
})
 
module.exports = router;

express有中间件的增删改查的更多相关文章

  1. express无中间件的增删改查

    index.js const express = require("express");导入express框架 const data = require("./data& ...

  2. webpack4+express+mongodb+vue 实现增删改查

    在讲解之前,我们先来看看效果如下所示: 1)整个页面的效果如下: 2) 新增数据效果如下: 3) 新增成功如下: 4) 编辑数据效果如下: 5) 编辑成功效果如下: 6) 删除数据效果如下: 7) 删 ...

  3. Node+Express+MySql实现简单增删改查和登录

    var express = require('express'); var mysql = require('mysql'); var app = express(); var bodyParser ...

  4. node+express实现简单的增删改查

    var express = require('express'); var bodyParser = require("body-parser"); var cors = requ ...

  5. express 对数据库数据增删改查

    接着 http://www.cnblogs.com/cynthia-wuqian/p/6560548.html (1)概念 Schema(属性) :一种以文件形式存储的数 据库模型骨架,不具备数据库的 ...

  6. nodejs+express+mysql 增删改查(二)

    1.最早一篇关于express框架简单的增删改查文章,http://www.cnblogs.com/zhengyeye/p/nodejs.html#3947308:意外走红博客园,无奈自己之前一直没有 ...

  7. 使用nodejs连接mysql数据库实现增删改查

      首先要有数据库 使用xampp 或者 phpstudy 可以傻瓜式安装 新建一个项目文件夹 之后在这个目录下初始化package.json (npm init) 先在项目中安装mysql 和 ex ...

  8. vue+express+mongodb 实现 增删改查

    一.创建一个vue项目 用脚手架vue-cli搭建一个项目,数据请求用axios方式,写几个按钮用来调接口(vue这块不做多解释,不懂的可以先去官网学习vue-cli:https://cli.vuej ...

  9. Node.js、express、mongodb 入门(基于easyui datagrid增删改查)

    前言 从在本机(win8.1)环境安装相关环境到做完这个demo大概不到两周时间,刚开始只是在本机安装环境并没有敲个Demo,从周末开始断断续续的想写一个,按照惯性思维就写一个增删改查吧,一方面是体验 ...

随机推荐

  1. sql,将一天所有记录按小时划分

    mysql: select date_format(H_TIME,'%H') as HOUR, ROUND(AVG(H_TEMPERATURE),1) as TEMP, ROUND(AVG(H_HUM ...

  2. Apache和iis的冲突处理

    http://wenku.baidu.com/link?url=N4GYFpkQyr8G0kVEy3AR2Q5FBho8EOle-_5inEfEq6QSxlyzB3xSbcpeugRdExkSU-tw ...

  3. ubuntu16.04-caffe安装过程详解-草稿

    前言 目前主要模块都是基于深度学习展开的,虽然知道一些深度学习的基础知识,只是皮毛,还没有使用深度学习框架练手甚至深入,故开始着手深度学习的实操和深入学习. 操作步骤 参考 1.Ubuntu16.04 ...

  4. jquery中.prev()

    ☆ 遍历 - .prev()方法:取得一个包含匹配的元素集合中每一个元素紧邻的前一个同辈元素的元素集合.选择性筛选的选择器. (previous:上一个,上一页,前一个,以前的......) 示例: ...

  5. ppt标题排版

  6. 使用rewrite 让php 实现类似asp.net 的IHttpModule 进行带参数js文件的参数获取

    asp.net 的IHttpModule 接口具有很大的作用,我们可以使用实现的模块进行全局的控制,但是在学习php 的过程中也想实现类似的功能,查找php 的文档,自己没有找到, 但是我们大家应该知 ...

  7. 3种web会话管理方式:基于server端session方式、cookie-based方式、token-based方式

    出处:http://www.cnblogs.com/lyzg/p/6067766.html

  8. js一种继承机制:用对象冒充继承构造函数的属性,用原型prototype继承对象的方法。

    js一种继承机制:用对象冒充继承构造函数的属性,用原型prototype继承对象的方法. function ClassA(sColor) { this.color = sColor; } ClassA ...

  9. msp430学习笔记-IO及低功耗

    引用:http://bbs.ednchina.com/BLOG_ARTICLE_3013511.HTM MSP430F149有6个8位的IO口,其中P1,P2口占两个中断向量,共可以接16个中断源.还 ...

  10. linux 查看文件夹大小 du -h --max-depth=1 ./

    du:查询文件或文件夹的磁盘使用空间 如果当前目录下文件和文件夹很多,使用不带参数du的命令,可以循环列出所有文件和文件夹所使用的空间.这对查看究竟是那个地方过大是不利的,所以得指定深入目录的层数,参 ...