zoukankan      html  css  js  c++  java
  • 用ngif 多次判断 Expression has changed after it was checked

    昨天遇到一个问题 ,用ng

    Expression has changed after it was checked
    

      

    查了一下说在angular2中,这个错误只会在dev开发模式下出现,在pro发布版本中不会出现,通过enableProdMode()可以控制 
    在组件中增加这段代码可以去掉这个检查,但是不建议这么做。

    import {enableProdMode} from '@angular/core';
    enableProdMode();
    

     报错原因是angular4 的一种机制吧。

    在dev模式下,额外增加了一次变化检测,在第一轮变化检测周期结束后,会立即进行第二轮变化检测,对比两次检测值,如果不相同,则认为是变化检测引起的。

    这个错误经常出现在组件通信时,在输入绑定中(set input,ngOnChanges等等,函数或getter等)修改了其他成员变量导致的,这类函数必须没有副作用。

    这句必须添加到main.ts 

    此处使用该方法前一定要先 import 它,就像 platformBrowserDynamic() 方法一样。

    注意,上述代码要放在 platformBrowserDynamic() 方法前使用,否则会报错:

    Error: (SystemJS) Cannot enable prod mode after platform setup.
    OK,现在已经知道如何切换工作模式了,现阶段还是使用开发模式吧。
    

      

  • 相关阅读:
    oracle 编译无效对象
    nginx配置监控
    Docker底层技术
    KVM入门
    maven 忽略checkstyle
    Java 使用 UnixSocket 调用 Docker API
    unix-socket-implementation-for-java
    NVIDIA Physix Unity3D
    Mobile Prototype Dev Res Collection(Unity原型开发资源储备)
    Unity抗锯齿
  • 原文地址:https://www.cnblogs.com/wupeng88/p/7776964.html
Copyright © 2011-2022 走看看