经常为了做一个特效新建一个静态页,所以封装了搭建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”; }); }, “https”:true 默认不指定是false } “listens”:{“listen”:85,“https”:true}
socket.io的对象记得先npm install"
以上所有参数都有默认值,可挑选设置
配置方式和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);