新闻页面-(一)

js演示:

const Koa = require("koa");
const Router = require("koa-router");
const views = require("koa-views");
const static = require("koa-static");
const mysql = require("mysql2");

配置和数据库之间的连接

const connection = mysql.createConnection ({   
    host:'localhost', 
    user:'root',
    password:"123321",
    database:"js04",
    charset:"utf8" 
});
let app = new Koa();
let router = new Router();

app.use(static(__dirname+"/static"));
app.use(views(__dirname+"/views",{
     extension:"pug"
}));


router.get("/",ctx=>{
    // ctx.body = "hello";    
    ctx.redirect("/index");
});

router.get("/index",async ctx=>{
    let perPage = 5;
    let p = parseInt(ctx.query.p) || 1;
获取对应的数据
let newData = JSON.parse(JSON.stringify(data)).splice((p-1)*perPage,perPage);
    let [data] = await connection.promise().query("SELECT * FROM news");
    let [newData] = await connection.promise().query("SELECT * FROM news LIMIT ?,?",[(p-1)*perPage,perPage]);
    let totalPage = Math.ceil(data.length / perPage);

    await ctx.render("index",{
        newData,
        totalPage,
        p
    });
});

配置详情页

router.get("/detail",async ctx=>{

    let id = parseInt(ctx.query.id) || 1;
    // let detailData = data.filter(v=>v.id==id)[0];
    // console.log(detailData);  [{.....}]

    let [detailData] = await connection.promise().query("SELECT * FROM news WHERE id=?",[id]);
    // console.log(detailData);
    detailData = detailData[0];  // [{}]
    await ctx.render('detail',{
        detailData
    });  
});

app.use(router.routes());
app.listen(8989);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值