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. 3.1 shell简介、变量、运算符

    小知识: ipcs可以查看系统中创建的ipc进程间通信资源,例如信号量.共享内存等.示例如下: 什么是shell? shell是核心程序kernel之外的指令解析器,是一个程序,同时是一种命令语言和程 ...

  2. java中 static,final,transient,volatile关键字的作用

    static 和final static  静态修饰关键字,可以修饰 变量,程序块,类的方法: 当你定义一个static的变量的时候jvm会将将其分配在内存堆上,所有程序对它的引用都会指向这一个地址而 ...

  3. poj-1170 (状态压缩形式下的完全背包)

    #include <iostream> #include <algorithm> #include <cstring> using namespace std; ; ...

  4. Word所有字体按比例缩小

    ctrl + [ 不然每次都要一部分一部分的修改啊

  5. BT601. BT709色彩空间

    参考:http://blog.csdn.net/mao0514/article/details/16958873

  6. 转oracle 学习 - 表空间

    Oracle 数据库的表空间和 Oracle 数据库数据文件 关于 Oracle 数据库的表空间. 很多 Oracle 初学者弄不明白表空间的概念和意义,他们只知道给数据库建表的时候需要到表空间这个东 ...

  7. JSP指令include和JSP动作元素include的区别

    include指令用于在JSP页面静态的包含一个文件,该文件可以是JSP页面.HTML页面.文本文件或者一段java代码.使用include指令的JSP页面在转换时,JSP容器会在其中插入所包含文件的 ...

  8. Linux部署禅道Steps&Q&A

    1.查看Linux的位数: getconf LONG_BIT 结果:32/64 2. 禅道开源版安装包下载 Linux 64位 下载站点1: http://sourceforge.net/projec ...

  9. python类的继承的两种方式

    class Animal(object): """docstring for Animal""" def __init__(self, na ...

  10. php中__get()和__set的用法

    php版本5.6 一般来说,总是把类的属性定义为private,这更符合现实的逻辑.但是,对属性的读取和赋值操作是非常频繁的,因此在PHP5中,预定义了两个函数“__get()”和“__set()”来 ...