用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,现在已经知道如何切换工作模式了,现阶段还是使用开发模式吧。
用ngif 多次判断 Expression has changed after it was checked的更多相关文章
- ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked.
ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. 解决方案: 异步更新 ...
- angular 中*ngIf 和*ngSwitch判断语句
<div style="text-align:center"> <h1> Welcome to {{ title }}! </h1> <p ...
- 拉姆达表达式 追加 条件判断 Expression<Func<T, bool>>
public static class PredicateBuilder { /// <summary> /// 机关函数应用True时:单个AND有效,多个AND有效:单个OR无效,多个 ...
- [jQuery] 判断复选框checkbox是否选中checked
返回值是true/false method 1: $("#register").click(function(){ if($("#accept").get(0) ...
- 初入angular4——实际项目搭建总结
前言 接到一个pc端后台项目,还会加入两个安卓同事一起学习和做这个项目,需要带一下他们. 既ng1之后,我就没怎么有过其它后台框架的实际项目经验了,期间用的移动端框架也并非vue.angular系列. ...
- Angular 学习笔记 ( CDK - Accessibility )
@angular/ckd 是 ng 对于 ui 组建的基础架构. 是由 material 团队开发与维护的, 之所以会有 cdk 看样子是因为在开发 material 的时候随便抽象一个层次出来给大家 ...
- 关于ExpressionChangedAfterItHasBeenCheckedError
最近在stackoverflow上似乎每天都有一些关于angular报错‘ExpressionChangedAfterItHasBeenCheckedError’的问题.发生这些问题通常是由于angu ...
- angular5自适应窗口大小
import {AfterViewInit, Directive, ElementRef, HostBinding, HostListener, Inject, Input, Renderer2} f ...
- Angular变更检测策略报错
报错信息: ERROR Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was ...
随机推荐
- aabb碰撞检测
在做矩形重叠判断时 要判断A矩形的最大X>B矩形的最小X,A最大Y<小于B最小Y and 要判断B矩形的最大X>A矩形的最小X,B最大Y<小于A最小Y 一套规则,用2遍,很神奇 ...
- python 关于文件操作
,要求在文件 .py 第六行插入一句话: #cat /root/python/2.py 2 昨夜雨疏风骤1 3 昨夜雨疏风骤2 4 昨夜雨疏风骤3 5 昨夜雨疏风骤4 6 昨夜雨疏风骤5 7 昨夜雨疏 ...
- JQuery-change/select/submit
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- modbus 寄存器介绍
modbus 的查询命令 命令 地址开始(两个地址) 地址长度(两个地址) 检验 01 xx xx xx ...
- 20165234 《Java程序设计》实验一 Java开发环境的熟悉
一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:刘津甫 学号:20165234 指导教师:娄嘉鹏 实验日期:2018年4月2日 实验时间:15:35 - 17:15 实验序 ...
- neutron-----openstack网络操作
#查看子网 openstack subnet list #删除子网 openstack subnet delete name/id #查看网络 openstack network list #删除网络 ...
- 【ARTS】01_17_左耳听风-20190304~20190310
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- k64 datasheet学习笔记52---Universal Asynchronous Receiver/Transmitter (UART)
1.前言 UART实现与外设或CPU的通信 2. UART概述 2.1基本特性 (1)Full-duplex operation (2)Standard mark/space non-return-t ...
- rocketmq的name server启动时的jvm参数配置
-Xms2g -Xmx2g -Xmn1g //设置年轻代大小 -XX:MetaspaceSize=128m //持久代的初始大小 -XX:MaxMetaspaceSize=320m //持久代的上限 ...
- 10分钟搭建Kubernetes容器集群平台【转】
官方提供3种方式部署Kubernetes minikube Minikube是一个工具,可以在本地快速运行一个单点的Kubernetes,尝试Kubernetes或日常开发的用户使用.不能用于生产环境 ...