UNPKG

liuchuan

Version:

I create for my love

31 lines (30 loc) 1.04 kB
#!/usr/bin/env node const fs = require('fs') const path = require('path') const cp = require('child_process') const express = require('express') const os = require('os'); // 创建一个服务实例 const app = express(); // 获取命令行输入端口号 没有默认3000 const port = process.argv[2]?process.argv[2].split('--')[1]:7070; //将当前命令行的工作目录作为静态资源目录 app.use(express.static(__dirname)); // 编写读取访问路径的中间件 app.use((req,res,next)=>{ // 读取一个模板页面 let dirHtml = fs.readFileSync(path.join(__dirname,'./index.html'),'utf-8') // 发送渲染好的html到客户端 res.send(dirHtml) next() }) app.listen(port,()=>{ // 提示服务开启 process.stdout.write(`server run at https://localhost:${port}\n`) // 打开浏览器 使用到子进程方法exec if(os.type() === 'Darwin'){ cp.exec(`open http://localhost:${port}`) return } cp.exec(`start http://localhost:${port}`) })