DecimalPipe не позволяет вводить более 6 цифр в angular - PullRequest
0 голосов
/ 27 февраля 2020

я использую angular6. и использовал десятичную функцию преобразования для преобразования входных значений для двух десятичных дворцов. это работает нормально, но проблема в том, что я не могу ввести суммы более 6 цифр.

вот код html код:

    <div class="ui-grid-col-12">
                    <input (blur)="numberTransform()" pInputText type="number" min="0" placeholder="Please enter amount" formControlName="amount"/>
                  </div>

это код ts:

  decimal: DecimalPipe = new DecimalPipe('en-US');
  currency: CurrencyPipe = new CurrencyPipe('en-US');
    this.form = this.formBuilder.group(
      {
        accNumber: ['', [Validators.required]],
        reAccNumber: [
          '',
          [
            Validators.required
          ],

        ],
        assessmentNo: ['', [Validators.required]],
        cusMobileNo: [
          '',
          [
            Validators.required,
            PhoneNumberValidator()
          ]
        ],
        amount: ['', [
          Validators.required,
          NumberValidator(true, true)
        ]],
        amountWithCharge: ['', []],
        pinNumber: ['', [
          Validators.required,
          NumberValidator(true, false, 4)
        ]],
        note: ['', [Validators.maxLength(300)]],
      },
      {
        validator : MatchValidator(
          'accNumber',
          'reAccNumber'
        )
      }
    );
  numberTransform() {
      //.replace(',', '')  to remove the commas sepertion
      this.form.get('amount').setValue(this.decimal.transform(this.form.get('amount').value, '1.2-2').replace(',', ''));
      this.getAmountWithCharge();
  }

 getAmountWithCharge() {
    const amount = this.form.get('amount').value;
    const data = {
      txnCode : Number(this.txnCode),
      profileId : this.sessionProfileService.geProfileId(),
      amount : amount
    };

    this.indexService.getAmountCharge(data).subscribe(
      response => {
        if (response.resultCode === 1000) {
          this.amountWithCharge = this.decimal.transform(Number(response.returnObject) + Number(amount), '1.2-2').replace(',','');
          //this.form.get('amountWithCharge').setValue(this.decimal.transform(Number(response.returnObject) + Number(amount), '1.2-2').replace(',',''));
        }

      }, error => {

      }
    );
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...