相关疑难解决方法(0)

Angular2中的生产和开发模式有什么区别?

出于某种原因,我必须在生产模式下运行我的应用程序.这些模式有什么区别?

development-environment production-environment angular

85
推荐指数
2
解决办法
4万
查看次数

当`enableProdMode()`时到底发生了什么

我正在使用Angular2 quick startdemo进行演示TypeScript.一切都运行良好,但在完成演示后,我在浏览器控制台中看到了一条消息

Angular 2正在开发模式下运行.调用enableProdMode()以启用生产模式.

我在这个答案的帮助下做到了这一点.

import { bootstrap } from '@angular/platform-browser-dynamic';
import { AppComponent } from './app.component';
import { enableProdMode } from '@angular/core';

enableProdMode();
bootstrap(AppComponent);
Run Code Online (Sandbox Code Playgroud)

  1. 当应用程序进入生产模式时会发生什么?
  2. 除了删除控制台消息之外,我没有看到应用程序行为的任何变化

有人可以解释一下吗?

typescript angular

32
推荐指数
3
解决办法
3万
查看次数

Angular2方法绑定错误:"检查后值已更改"

我想在Angular2中制作一个圆形板.例如,我想制作10个圆圈,但实际上这个数字可以改变.我想计算每个圆的半径,所以它是动态的而不是静态的.例如,参见图片在此输入图像描述

这是我的代码

@Component({
    selector:"circle"
    template: `
  <svg>
    <circle *ngFor='#item of forLength #i=index #l=last #e=even'
            cx="50%" cy="50%" [style.r]="calculateRadius()" stroke="black" stroke-width="5" fill="white"></circle>
  <svg/>  
    `
})

export class CircleComponent{
    public maxRadius:number=25;
    public totalRounds:number=10;
    public x:number=30;

    public calculateRadius():number{
        var distanceBetweenCircles=this.maxRadius/(this.totalRounds-1);
        this.x-= distanceBetweenCircles;
        return this.x;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

calculateRadius() in CircleComponent@7:30' has changed after it was checked. 
    Previous value: '-7.500000000000007'. 
    Current value: '-36.66666666666668' in [calculateRadius() in CircleComponent@7:30]
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来编写这个for循环*ngFor而不是在单独的方法中写这个?

data-binding angularjs typescript angular

4
推荐指数
1
解决办法
1万
查看次数