位置: 编程技术 - 正文

浅谈在koa2中实现页面渲染的全局数据(koa2 koa)

编辑:rootadmin

推荐整理分享浅谈在koa2中实现页面渲染的全局数据(koa2 koa),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:koa2原理,koa2 koa,koa2-cors,koa2 部署,koa2实战,koa2原理,koa2教程,koa2实战,内容如对您有帮助,希望把文章链接给更多的朋友!

最近用koa2做一个项目的web端,遇到一个场景。

该项目主要用的是传统的服务端渲染的方式,所以会用 koa-views 去做页面的渲染工作。实现方式就是 ctx.render('path',data),那么,有如下场景,每个页面都需要去验证是否登录,登录了要返回页面个人数据,这个情况,怎么办呢?我不想每次都去手动的加入个人数据啊。例如这样:

此处的user就是每个页面都是要返回的数据。

浅谈在koa2中实现页面渲染的全局数据(koa2 koa)

很显然,每个页面都要获得的数据,用中间件去获取,类似java的拦截器,过滤器之类的了。

OK,中间件中已经拿到了用户数据了,那么,问题来了。数据是可以拿,怎么放呢?

找到koa-views 源码。有如下代码:

关键是这一段

很显然,state 是将传入的数据,合并了,中间件配置的options ,和ctx.state的。中间件显式配置显然部合适,所以,做法是,在拦截器中间件中,把user赋值给ctx.state.

ok。这样一来,在页面渲染的时候,就会带上用户信息了。而不需要再在各处去自己手动添加。

标签: koa2 koa

本文链接地址:https://www.jiuchutong.com/biancheng/379552.html 转载请保留说明!

上一篇:node.js利用mongoose获取mongodb数据的格式化问题详解(node.js利用cas实现单点登录)

下一篇:Node.JS使用Sequelize操作MySQL的示例代码(node.js使用mysql)

  • 账面价值与计税基础一般会产生差异的是
  • 小规模纳税人不开票收入怎么报增值税
  • 汇算清缴企业所得税弥补亏损明细表怎么填
  • 发票已经做账但要退款账不平咋办
  • 小规模免税销售额是含税还是不含税
  • 机票抵进项税税率
  • 境外设计费涉及税收
  • 复印的原始凭证可以作为记账依据吗
  • 原材料呆滞物料处理方法
  • 增值税起征点有啥用
  • 贷款 保险费
  • 给员工缴纳保险
  • 增值税价外费用如何开票
  • 营业收入包括其收入吗
  • 哪些金融资产不计提减值
  • 自然灾害造成的存货净损失计入什么科目
  • 基金赎回手续费怎么计算
  • 以前年度有亏损需要交增值税吗为什么
  • 法人实名认证后为什么查不到名下公司
  • 哪些业务可以进入共享服务中心
  • 税控盘技术服务费可以抵税吗
  • vue3.0组件库
  • 记账凭证的摘要是什么意思
  • 支付宝消费计入什么科目
  • thinkphp 数据库查询
  • smart图形怎么单独设置动画
  • 无形资产转让的会计处理
  • 企业办理税务
  • 科西嘉岛攻略
  • 直运商品委托代销商品的销售成本的计算方法应采用
  • php用img显示图片
  • nvme安装win10教程
  • 保安行业税率是多少
  • dematel模型有什么缺点
  • redis的eval命令
  • 股东投资款超过实收资本怎么处理
  • 企业代收水电费算不算收入
  • 企业不交所得税的情况
  • 代缴纳房产税
  • 什么是全面一次性奖金
  • sql语句修改某个字段
  • 固定资产会计上与税法上提折旧时间
  • 太阳能发电的开发条件
  • 税务登记证证书编号是什么
  • 销售返利及发票开具如何进行会计处理?
  • 固定资产原价怎么计算
  • 收款收据可以用于财务报账吗
  • 城建税50%减免条件
  • 捐赠出去的固定资产需要继续折旧吗
  • 计提工资的会计处理
  • 用友软件冲销之前凭证怎么操作
  • 生产性生物资产折旧计入什么科目
  • 企业共同控制持股比例怎么算
  • mysql 5.7.30安装
  • sql server常规错误
  • Linux下Mysql5.7.19卸载方法
  • sql的all和any
  • windows10内置应用是哪些
  • linux处理文件命令
  • linux查看端口数据
  • caddll丢失
  • I810 Graphics LINUX Driver的安装
  • win10预览版好吗
  • opengl纹理贴图步骤
  • 如何使用shell脚本将文件中的人分组,并输出
  • Extjs4 GridPanel 的几种样式使用介绍
  • 安卓查看安装包
  • bat vba
  • unicode编码实现方案
  • nodejs微信公众号开发
  • unity3d怎么控制人物移动
  • JavaScript中的NaN代表什么
  • python的cumprod
  • python二叉树的遍历算法
  • 浙江省国税电子税务局如何新增企业
  • 医院体检怎么拿发票
  • 外贸企业出口退税流程及账务处理
  • 增值税借方有余额怎么调整
  • 乌市沙区医保局电话是多少
  • 开展培训举办培训
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设