大家好 有人用koa2框架吗? 我在view层里面获取不到ctx.state的值是怎么回事
这个ctx.state里面的loginbean
这个是在view层里面的loginbean 获取不到
这个是报错信息 说loginbean找不到
4 回复
ctx.state = {title: ‘title1’} 你自己干掉了 我猜的
@AfterThreeYears very good
1、 ctx
上的state
并不是像ctx.body
、ctx.header
这种有特殊处理的属性,ctx.state
完全是开发者自己处理的。
2、因此你对ctx.state
赋值,就意味着你把这个变量指向的引用objA变成了指向另一个引用objB,那原来的引用objA就成野的了。
//安全
ctx.state.title = 'haha';
//危险..
ctx.state = {"title": 'haha'};
3、你在中间件里这么干是很危险的,除非你知道自己在干啥。。