• Angular 学习笔记 (久久没有写 angular 常会忘记的小细节)


    由于经常跑去写后端, 而且一些就几个月...很多 ng 的东西就忘掉了. 

    写在这里方便复习呗.

    1. async pipe 没有 resolve 前返回的值是 null 

    2 view component 没有写 [input] 的话, ng 是不会给 input 属性赋值的所以属性根本不会被创建 (oninit 时 object.keys(this) 可以看出来) , 我们可以通过在 constructor 写一个 default value, 这样在 onInit 时就可以拿到 default value 了

      但留意, 如果 view component 写上 [input]="undefined" 那样我们的 default value 就被覆盖掉了哦. (经常会出现在 input 一个需要async 的 data 上)

    3.即使一个 promise 已经 resolve 了,但你 .then 它, 任然是异步执行, 这次为了确保它始终是异步的概念. 

    4. form value accessor 执行 ngOnInit-> writeValue-> registerOnChange -> registerOnTouched -> ngAfterContentInit 

    5.nested [formGroup] 是无法拿到 root 的 submitted 的, material error 也没有处理这种情况... 所以要 nested form 最好使用唯一 [formGroup] 配上 formGroupName 或者 formGroup.get('nested path') 给所有 control.

    6.router.event subscribe 在 constructor 和 oninit 监听是不同的, constructor 可以监听的到本次 event ActivationEnd 到 NavigationEnd 事件. oninit 才监听就完全监听不到本次事件了.

    7. [src] 如果结尾是 extension 那么就不需要 sanitizer, 如果是 link to website site or web api path 那么就要 sanitizer.

  • 相关阅读:
    android中statusbar高度的问题
    int和short做循环计数器时的效率问题
    解决Rectangle Packing问题【原创】
    10个android开源项目(转)
    自动编译.9.png文件
    通过wifi调试android程序
    HBase 性能优化笔记
    [转载]定制CentOS 6.3 自动安装盘
    region split时metascan出现regioninfo为空
    Google Dremel 原理 如何能3秒分析1PB
  • 原文地址:https://www.cnblogs.com/keatkeat/p/10146366.html
Copyright © 2020-2023  润新知