快速搭建koa,让你速度测试特效页是否兼容手机与pc
发布于 4 年前 作者 mzTeamMeatMan 2860 次浏览 最后一次编辑是 3 年前 来自 分享

经常为了做一个特效新建一个静态页,所以封装了搭建koa的模块:

git:https://github.com/mzTeamMeatMan/koaInit
npm install koainit

根目录建立app.js 代码内容

var app = require("koainit")();

这个时候直接启动会在根目录新建koaHtml和koaStatic2嗰文件夹,默认启动80端口,koaHtml文件夹的意思是专门给你放html文件的,koaStatic是放css和js静态文件的,当然可以指定目录。

var app = require("koainit")();
//app里面把koa-router包含进去了,回传是this.body="";渲染页面是yield this.render("页面",要渲染的object对象);
app.router.get("/",function * (next){
	yield this.render("/index",{"前端渲染的key":"前端渲染的value"});
});
/index就是:/koaHtml/index.html

这样你就可以用架设项目的IP访问了,http://192.168.1.100 具体koa的使用可以多参考下koa-router的文档 我写一下app的参数

var data = {
"staticPath":"指定静态文件的路径,用来读取css和js等静态文件,前端引用的时候/代表这个路径",
"htmlPath":"html模板路径,用来读取html文件,文件后缀可以另外指定,render渲染的时候/代表此路径",
"viewExt":"指定前端模板后缀名,默认html,别带.号(ejs参数)",
"cache":"http协议缓存,默认是false,启动是true,开发和调试阶段启用你会后悔(ejs参数)",
"debug":"一直给true,没修改过,不知道改false会怎么样(ejs参数)",
"locals":"这个也是(ejs参数)",
"filters":"这个也是(ejs参数)",
"httpsKey":"https安全证书的key",
"httpsCert":"https安全证书内容",
"listens":"启动端口,可以是字符串,可以是数字,可以是object,也可以是数组,具体看listens示例"
};
var app = require("koainit")(data);

listens示例:

"listens":888
"listens":"888"
"listens":{"listens":888}
"listens":{
	"listen":888,
	"socketIO":require("socket.io"),
	"socketCall":function(socket,io){
				socket["on"](key,function(data){
						socket["emit"]("key",{});
				});
	},
	"https":true    默认不指定是false
}
"listens":{"listen":85,"https":true}

socket.io的对象记得先npm install"

以上所有参数都有默认值,可挑选设置

4 回复

和https://github.com/base-n/koa-generator 类似吧

配置方式和https://github.com/base-n/base2-core/tree/koa这个类似

var app = require('base2')({
  // debug: true,
  type:"koa",
  root:__dirname,
  "views": "views",
  "routes": "routes2",
  "public": "public",
})

// console.log(app);
// app.mount_routes(__dirname + '/routes2');
// app.mount_plugins(__dirname + '/plugins');
app.start(3019);

@i5ting 大神我们撞码了哈哈

回到顶部