【问题标题】:right way to add days into a array将天数添加到数组中的正确方法
【发布时间】:2019-06-02 18:52:49
【问题描述】:

我正在尝试制作一张包含信用卡付款日期列表的表格,问题是我的所有行都获得相同的日期。

我正在使用时刻,问题是当我将值保存为数据格式字符串时一切正常,但我需要对象将其保存为背景上带有碳的日期。

这是实际代码

crearTablaPagos(): void{

         let pagoIndividual = this.comprasVentasForm.totalConIntereses/this.numeroCuotas;
         //console.log(fecha);
         let contador = 1; 
         let nextFecha = moment(this.comprasVentasForm.incio);
         this.comprasVentasForm.tablaPagos = [];

         while(contador <= this.numeroCuotas) {
            let pago: any;
            pago = {};

            pago.numeroCuota = contador;
            pago.valorCuota = (pagoIndividual).toFixed(2);  
            pago.fechaPago = nextFecha.add(this.plazo, 'days').format('YYYY-MMM-DD');
            pago.comprasVentas  = this.comprasVentasForm.id;
            pago.saldo  = (pagoIndividual).toFixed(2);
            this.comprasVentasForm.tablaPagos.push(pago);


            contador++;
         }


    }

这就是我展示它的方式

 <tr *ngFor="let pago of comprasVentasForm.tablaPagos">
                                    <th>{{pago.numeroCuota}}</th>
                                    <th>{{pago.fechaPago}}</th>
                                    <th>{{pago.valorCuota}}</th>
                                </tr>

但这不是我需要的

我需要时刻对象,所以我这样做

 crearTablaPagos(): void{

         let pagoIndividual = this.comprasVentasForm.totalConIntereses/this.numeroCuotas;
         //console.log(fecha);
         let contador = 1; 
         let nextFecha = moment(this.comprasVentasForm.incio);
         this.comprasVentasForm.tablaPagos = [];

         while(contador <= this.numeroCuotas) {
            let pago: any;
            pago = {};

            pago.numeroCuota = contador;
            pago.valorCuota = (pagoIndividual).toFixed(2);  
            pago.fechaPago = nextFecha;
            pago.comprasVentas  = this.comprasVentasForm.id;
            pago.saldo  = (pagoIndividual).toFixed(2);
            this.comprasVentasForm.tablaPagos.push(pago);

            nextFecha =  nextFecha.add(this.plazo, 'days');
            contador++;
         }


    }

并展示它


                                <tr *ngFor="let pago of comprasVentasForm.tablaPagos">
                                    <th>{{pago.numeroCuota}}</th>
                                    <th>{{pago.fechaPago.format('YYYY-MMM-DD')}}</th>
                                    <th>{{pago.valorCuota}}</th>
                                </tr>

但现在我得到了这个

这让我发疯了,我不明白为什么会发生这种情况

我想知道在我的数组中添加天数的最佳方法是什么

【问题讨论】:

    标签: angular momentjs


    【解决方案1】:

    您正在向同一日期参考添加天数,并且您的所有数组项也指向同一日期参考。

    尝试在添加天数之前进行克隆,像这样

    nextFecha = nextFecha.clone();
    nextFecha.add(this.plazo, 'days');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-08
      • 2016-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-06
      • 1970-01-01
      • 2022-12-23
      相关资源
      最近更新 更多