node中配置几个常用的snippets

226 阅读3分钟

通过nodejs快速创建server,方便本地的接口调试。 通过snippets创建代码片段,配置到vscode中,快速调试。

基于http方式

创建 http server

const http = require("http");

const server = http.createServer((req, res) => {

    if (req.url == "/login") {

    if (req.method == "POST") {

    res.end("login page");

    } else {

    res.end("login method error");

    }

    } else {

    res.end("node http");

    }

});

server.listen(3000, () => {

    console.log("server is runing");

});

将以上代码粘贴到snippet 中,

image.png

打开编辑器>文件>首选项>用户代码片段

image.png

选择js代码片段

image.png

推荐一个代码片段的生产网站 snippets

snippets语法

  • prefix :代码片段名字,即输入此名字就可以调用代码片段。
  • body :这个是代码段的主体.需要编写的代码放在这里, 
  • $1 :生成代码后光标的初始位置。
  • $2 :生成代码后光标的第二个位置,按tab键可进行快速切换,还可3,3,4,$5.....
  • ${1,字符} :生成代码后光标的初始位置(其中1表示光标开始的序号,字符表示生成代码后光标会直接选中字符。)
  • description :代码段描述,输入名字后编辑器显示的提示信息。

基于express方式

express中文网

express的使用过程有两种方式:

  • 方式一:通过express提供的脚手架,直接创建一个应用的骨架;
  • 方式二:从零搭建自己的express应用结构;
  • 方式一:安装express-generator
  • 方式二:从零搭建自己的express应用结构;

Express安装

安装脚手架

npm install -g express-generator

创建项目

express express-demo

安装依赖

npm install

启动项目

node bin/www

基于express的方式创建server

const express = require("express");
const app = express();
const homeRouter = express.Router();
homeRouter.post("/detail", (req, res, next) => {
    res.json({
    code: 200,
    msg: "detail page",
    data: [
        {
        title: "manger",
        name: "peyton",
        },
    ],
    });
});

app.use("/home", homeRouter);

app.listen(3000, () => {

console.log("server is runing");

});

这里用一个 snippets 的语法

const ${1:home}Router = express.Router();

基于koa方式

跟之前一样,创建 koa 的app对象,并且默认创建 homeRouter的路由


const app = new Koa();

const homeRouters = new KoaRouter({ prefix: "/home" });

homeRouters.get("/detail", (ctx, next) => {
    ctx.body = {
    code: 200,
    msg: "detail page",
    data: [
        {

        title: "manger",

        name: "peyton",

        },
    ],
    };

});
app.use(homeRouters.routes());
app.use(homeRouters.allowedMethods());
app.listen(3000, () => {
    console.log("server is running");
});

总结

express 与 koa的对比

  1. 中间件处理:Express使用基于回调函数的中间件处理机制,而Koa使用基于异步函数(async/await)的中间件处理机制。Koa的中间件机制更加简洁和直观,利用async/await语法可以更容易地编写和管理异步代码。

  2. 异常处理:Express需要手动处理错误和异常,而Koa内置了对错误的处理机制,可以自动捕获和处理错误。这使得在Koa中编写错误处理逻辑更加方便和简单。

  3. 控制权:Koa在设计上更加注重开发者对于请求和响应的控制权。它提供了更细粒度的控制,可以更灵活地处理请求、响应和中间件的执行顺序。

  4. Async/Await支持:Koa天生支持async/await语法,使得处理异步操作更加简洁和直观。而在Express中使用async/await需要借助其他库或自定义处理。

  5. 社区生态:由于历史悠久,Express拥有庞大的社区和丰富的生态系统,有大量的第三方中间件和插件可供使用。Koa相对较新,生态系统相对较小,但也在不断发展壮大。

总体而言,Express是一个成熟、稳定且广泛使用的框架,适用于构建各种类型的Web应用。而Koa则更加注重开发者体验和灵活性,适合那些喜欢使用新特性和更细粒度控制的开发者。并且 Koa的核心代码只有1600+行,是一个更加轻量级的框架。