介绍二,路由配置
三,请求
四,html模板
1,好处
2, koa-views + nunjucks实现html模板
五、操作静态资源
1,静态资源在开发中的地位
2, koa-static-cache实现静态资源操作
六、进阶
怎么快速搭建一个节点koa2 ssr项目?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
一、创键项目
1。创建目录koa2
2。npm init创建包。json,然后执行npm安装
3。通过npm安装高雅安装高雅模块
4。通过npm安装主管安装主管模块,用于节点热启动
5。在根目录下中新建索引。js文件,作为入口文件,内容如下:
const Koa =,要求(& # 39;洋槐# 39;);,//,Koa 为一个类 const app =, new 高雅(); , app.use (async (ctx,,下一个),=祝辞,{ ,await next ();=,ctx.response.body & # 39;你好,,koa2 ! & # 39;; }); , app.listen(9527年,(),=祝辞,{ ,console.log(& # 39;却;能够server is running at http://localhost & # 39;, +, 9527) })
6。配置包
{ ,“name":,“koa" ,“version":,“1.0.0" ,“description":““, ,“main":,“koa.js" ,“scripts": { ,“serve":“supervisor koa.js" }, ,“author":““, ,“license":,“ISC" ,“dependencies": { ,“koa":“^ 2.7.0", ,“supervisor":“^ 0.12.0" ,} }
7。启动
npm run
二,路由配置
cnpm 小姐:koa-router const router =, new 路由器();,//,实例化路由 router.get (& # 39;/& # 39;,, async (ctx,,下一个),=祝辞,{=,ctx.response.body & # 39; & lt; h6>好家伙& lt;/h6> & # 39;; }); app.use (router.routes ());
路由参数
//请求地址,www。* * * * */瑞士?=1 router.get (& # 39;/hello/:名字# 39;,,async (ctx,,下一个),=祝辞,{ ,var name =, ctx.params.name;,//,获取请求参数,瑞士 ,var 得到=,ctx.query.from;//, 1 ,ctx.response.body =, ' & lt; h6>好家伙,,${名称}! & lt;/h6>”; });
三,请求
文章
, const bodyParser =,要求(& # 39;koa-bodyparser& # 39;); ,app.use (bodyParser ()); router.post(& # 39;/登录# 39;,,async (ctx,,下一个),=祝辞,{ ,let name =, ctx.request.body.name; ,let password =, ctx.request.body.password; ,console.log(名,密码); ,ctx.response.body =, ' & lt; h5>好家伙,,${名称}! & lt;/h5>”; });
得到
router.get (& # 39;/& # 39;,, async (ctx,,下一个),=祝辞,{=,ctx.response.body & # 39; & lt; h5>好家伙& lt;/h5> & # 39; });
四,html模板
1,好处
使用html模板,将html从js中分离出去,有助于项目开发和管理,而且,html模板在koa2中,必须通过中间件来实现。
2, koa-views + nunjucks实现html模板
, nunjucks.configure(解决(__dirname, & # 39;观点# 39;),,{,autoescape: true }); ,app.use(视图(时间+ __dirname & # 39;/视图# 39;,,{ ,地图:{,html: & # 39; nunjucks& # 39;,} ,}));
五、操作静态资源
1,静态资源在开发中的地位
静态资源环境在服务端是十分常用的一种服务,在后台开发中不仅有需要代码处理的业务逻辑请求,也会有很多的静态资源请求。比如请求js, css, jpg, png这些静态资源请求。也非常的多,有些时候还会访问静态资源路径。
2, koa-static-cache实现静态资源操作
app.use ( ,staticCache(解决(“dist"), { maxAge才能:,365,*,24,*,60,* 60 ,}) )
六、进阶
1,结构
入口文件(指数。js)
const Koa =,需要(& # 39;洋槐# 39;) const bodyParser =,要求(& # 39;koa-bodyparser& # 39;); const staticCache =,要求(& # 39;koa-static-cache& # 39;); const views =,要求(& # 39;koa-views& # 39;) const {解决},=,要求(& # 39;path & # 39;) const R =,要求(& # 39;ramda& # 39;) const MIDDLEWARES =,(& # 39;路由器# 39;],//中间件配置文件 const nunjucks =,要求(& # 39;nunjucks& # 39;) const logsUtil =,要求(& # 39;. ./跑龙套logs.js& # 39;);//中间件导入,路由导入 const useMiddlewares =,(应用程序),=祝辞,{ ,R.map ( ,R.compose ( R.forEachObjIndexed才能( initWith 才能=祝辞,initWith(应用) ),才能 要求,才能 name 才能=祝辞,解决(__dirname,,’。/中间件)/${名称}') ,) ,)(中间件)) } ;(async (),=祝辞,{ ,const app =, new 高雅(); ,//view engine 设置 ,nunjucks.configure(解决(__dirname, & # 39;观点# 39;),,{,autoescape: true });//views with nunjucks null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null怎么快速搭建一个节点koa2 ssr项目