ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

模块的创建和添加,查找

2021-11-29 19:31:55  阅读:131  来源: 互联网

标签:const text ctx js 查找 模块 router tag 添加


在Visual Studio Code上的操作

1.创建一个node_modules的文件夹
2.在node_modules中创建一个content.router.js,tag.router.js,user.router.js的js文件(模块)

 

 

 

创建模块

终端:

nodemon app.js   启动app.js

npm install mongoose --save 安装moogoose

在content.router.js,tag.router.js,user.router.js文件中分别写:

//模块导出
module.exports=function(router){
    router.get("/content",async (ctx)=>{ //处理操作
        ctx.body="content";
    })
}
module.exports=function(router){
    router.get("/user",async ctx=>{
        ctx.body="user";
    })
}
module.exports=function(router){
    router.get("/tag",async ctx=>{
        ctx.body="tag";
    })
}


//导入模块(add.js中)

//导入模块
const tagRouter=require("./routers/tag.router");
const userRouter=require("./routers/user.router");
const contentRouter=require("./routers/content.router");

//使用函数(add.js中)

//使用函数
  const Router=require('koa-router');   const router=new Router();//创建路由,支持传递参数
tagRouter(router);
userRouter(router);
contentRouter(router);

在mongodb.js中写:

//导入mongoose
const mongoose = require("mongoose");
//建立数据库连接
mongoose.connect("mongodb://127.0.0.1:27017/test");

const tagSchema = new mongoose.Schema({
    // text:String,
    text: {
        type: String,
        minlength: 2,//最小长度
        maxlength: 12//最大长度
    }
});
const tagModel = new mongoose.model("tag", tagSchema);
// 用tagModel进行增删改查

module.exports = tagModel;

// const arr=[{text:"HTML"},{text:"SQL"},{text:"NodeJS"}]
// tagModel.insertMany(arr,function(err,docs){
//     console.log(err);
//     console.log(docs);
// });

 

在tag.router.js的添加和删除:

//添加 删除
//导入
const tagModel = require("../mongodb");
//导出
module.exports = function (router) {
    router.get("/tag", async (ctx) => {

        // const arr = [{ text: "HTML" }, { text: "SQL" }, { text: "NodeJS" }]
        // tagModel.insertMany(arr, function (err, docs) {
        //     console.log(err);
        //     console.log(docs);
        // });

        // 用tagModel进行增删改查
        //tagModel.find({}); 查找所有
        const data=await tagModel.find({});//await 等待

        ctx.body = {
            status: 200,  //成功
            data: data, 
            msg: ""  //错误信息
        }
    })
    router.post("/tag",async ctx=>{
        await tagModel.create(ctx.request.body);
        ctx.body = {
            status: 200,  //成功
            data: null,
            msg: ""  //错误信息
        }
    })
}
/*
    json对象
    {
        status:200,  成功
        data:{},
        msg:""  错误信息
    }
*/

 

用post方法添加张三

POST http://localhost:4000/tag
Content-Type: application/json
//参数解析
//首先明确一点,这也是一种文本类型(和text/json一样),表示json格式的字符串,如果ajax中设置为该类型,则发送的json对象必须要使用JSON.stringify进行序列化成字符串才能和设定的这个类型匹配。

# 上面和下面必须得空一行
# content
# 表单方式 id=1000&name=张三
# 必须用双引号
{
    "text":"张三"
}

总结今日错误:

1.

 

 

 如果点击Send Request ,出现

 

 

可以在终端再运行一次 nodemon app.js

2.

 

这里的test是区分大小写的,和下面的test保持一致,插入数据后,会自动生成tags

 

 

标签:const,text,ctx,js,查找,模块,router,tag,添加
来源: https://www.cnblogs.com/d-hx/p/15620913.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有