Angular-приложение получает большие числа из бэкэнда, и они плохо отображаются в HTML-таблице - PullRequest
0 голосов
/ 07 января 2019

Мое приложение построено на Angular 7 и имеет сервис, который запрашивает данные у WebApi, у которого есть EntityFramewrok для возврата информации.

Проблема заключается в том, что числовые поля, содержащие более 18 цифр, поступают неправильно (например, число 23434343434345353453,35 показывает его как 23434343434345353000), когда служба получает их. Я сделал тесты, и EntityFramework хорошо загружает данные. Наконец, когда я вставляю данные из моего углового приложения, они хорошо вставляются с 18 или 20 цифрами, которые мне нужны, потому что модель создается с помощью библиотеки big.js.

Передняя часть: угловая Серверная часть: WebApi с ASP .NET MVC и EntityFramework

Компонент

import Big from 'big.js';

export class Parametro {
    NRO_CONVENIO: string;
    FEC_INICIO_NEGOCIACION: Date;
    FEC_FIN_NEGOCIACION: Date;
    VLR_CUPO_APROBADO: Big;
    VLR_CUPO_UTILIZADO: Big;
    VLR_CUPO_APROBADO_STORAGE: Big;
    VLR_CUPO_UTILIZADO_STORAGE: Big;
    ESTADO_DISPONIBLE: string;
    ISEDIT: boolean;
}



export class ParametrosNegociacionService {
  formData: Parametro;
  list: Observable<Parametro>;
  readonly rootURL = environment.baseUrl; 

  constructor(private http: HttpClient) { }

  postParametro(formData: Parametro) {
      return this.http.post(this.rootURL + '/ParametrosNegociacion', formData);
  }

  refreshList() {
      this.http.get<Observable<Parametro>>(this.rootURL + '/ParametrosNegociacion')
    .toPromise().then(res => {
        this.list = res as Observable<Parametro>;
        this.list.forEach(element => {
          //Here the large number arrives badly
          element.VLR_CUPO_APROBADO_STORAGE = element.VLR_CUPO_APROBADO; 
        });
    });
  }
...

}

View

<table id="dataTable" class="dataTable">
  <thead class="headerStyle">
     <tr>
       <th>Vlr Cupo Aprobado</th>
     </tr>
  </thead>
  <tbody>
    <tr class="rowStyle" *ngFor="let emp of service.list">
     <!--Here the large number showon badly -->
     <td>{{emp.VLR_CUPO_APROBADO }}</td>
    </tr>
  </tbody>
</table>

Когда данные поступают в http.get, числовые значения не соответствуют информации.

Как правильно получить информацию о больших числах, когда я делаю запрос http.get всей информации.

Я собираю любые комментарии или идеи, которые вам нужны, чтобы решить эту проблему

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