• express无中间件的增删改查


    index.js
    const express = require("express");导入express框架
    const data = require("./data");导入data文件
    const url = require('url');导入路径模块
    const fs = require("fs");导入fs模块
    var app = express();把express实例化
    app.use(express.static("views"));使用静态资源中间件(middleware)
     
    app.set("view engine","ejs");设置模板引擎是ejs
     
    app.get("/",(req,res)=>{
        res.send("hello world");
    })
     
    app.get("/list/:no?",(req,res)=>{
        n=Number(req.params.no);记录哪一个元素是红色的
        if(!n && n!=0) n=1; 设置默认值
        res.render("list",{渲染list模板
             list:data.list,
             n:n
        })
    })
    添加
    app.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.render("list",{渲染list模板
             list:data.list,
             n:data.list.length-1最后一个元素变红
        })
    })
    删除
    app.get("/del/:idx",(req,res)=>{
        var idx=Number(req.params.idx);
        data.list.splice(idx,1);
        fs.writeFileSync("./data.json",JSON.stringify(data));
        res.render("list",{渲染list模板
            list:data.list,
            n:data.list.length-1 最后一个元素变红
        })
    })
    查找下标对应的内容
    app.get("/modify/:idx",(req,res)=>{
        var idx=Number(req.params.idx);获取下标
        var item=data.list[idx];获取对应下标的内容
        res.render("modify",{渲染modify模板
            idx:idx,
            item:item
        })
    })
    修改
    app.get("/modify*",(req,res)=>{
        var obj=url.parse(req.url,true);获取路径并拆分
        data.list[obj.query.idx]=obj.query.item;通过对应的下标,得到修改后的对应内容
        fs.writeFileSync("./data.json",JSON.stringify(data));
        res.render("list",{渲染list模板
            list:data.list,
            n:data.list.length-1 最后一个元素变红
        })
    })
    查询
    app.get("/query/:kw?",(req,res)=>{
        var list=data.list.filter((item)=>{
            return item.includes(req.params.kw);
        })
        res.render("query",{
            list:list
        })
    })
     
    监听
    var ser = app.listen(3010,()=>{
        console.log(`listen ${ser.address().port} ...`);
    })
  • 相关阅读:
    博客园主题备份
    NT6 HDD Installer 3.1.3(硬盘直接重装Win7/Win8/Windows 2008系统)
    C# 自动投票和手机号码归属地查询 简单程序源码分享(高手飘过)
    Android 开发最简单的快速拨打器(含源码)
    学Android的开始
    Android 图片浏览器Gallery的简单应用
    WordPress设置定时发布文章,且发布之前无404可以正常访问(手动修改代码,无需插件)
    EJB3.0JPA实体的注解规范以及Hibernate特有的扩展
    验证码技术
    数据库索引
  • 原文地址:https://www.cnblogs.com/tis100204/p/10309980.html
Copyright © 2020-2023  润新知