• express中使用 connect-flash 及其源码研究


    刚开始摸node.js, 在用express 4.x 的过程中 有一个connect-flash的玩意 

    如上图, 在 /reg 页面提交注册信息的时候 如若两次输入的密码不匹配则调用请求对象reqflash方法写入提示消息; 然后 在展示 /reg 页面的时候取出抛给视图模版; 看起来就像个字典对象

    这个包必须在引用 express-session 包的前提下才能使用 why1 ,并且写入的值 在取出一次后即销毁 why2。 这非常像asp.net mvc里边的 tempdata对象

    开源的东西好处就是随时看源码~~~

    从 var msgs = this.session.flash = this.session.flash || {}; 这边很容易看出 flash 其实就是存储在session中的一个对象的键名;

    然后根据传入参数的个数做不同的处理:

      1 .  当传入参数为2个或多个的时候,session将会有 {"flash":{key:value}}  这样的对象,key就是传入的type,  value可能是字符串,数组或者 格式化字符串;

      2 .  当只传参数type的时候, 就是从session中取出flash对象的相应的value, 并且移除 delete msgs[type];

    ps:    flash英文解释是:闪光   我理解成一瞬间显示就消失的东西, 非常符合这里的编写意图,  不过个人觉得要是包名改成“session-flash”会更好 :)

  • 相关阅读:
    循环神经网络
    相似度计算(余弦距离/欧式距离)
    最常见Linux操作
    注意力机制总结
    随机打乱数组算法、蓄水池算法
    6.1 数据结构---树(遍历)
    Node.js调用C/C++
    linux中nmcli命令详解
    stylus入门使用方法
    webpack CommonsChunkPlugin详细教程
  • 原文地址:https://www.cnblogs.com/mushishi/p/5334666.html
Copyright © 2020-2023  润新知