Методы печати Delphi [закрываются]

Попробуйте создать объект prototype для User следующим образом. User вы получаете от службы не может быть prototype объект и, следовательно, функции на нем недоступны.

user: User;
this.userService.getUser(this.loggedUser.nameid).subscribe((user: User) => {
    this.user = Object.assign(new User, user) //-->notice the use of new here..
    this.user.givenname = this.loggedUser.given_name;
    this.user.surname = this.loggedUser.family_name;
    console.log(this.user.fullName);
    this.user.sayHello();
  });

Обновление: классы JavaScript не совсем объектно-ориентированная модель. Согласно MDN:

классы JavaScript, представленные в ECMAScript 2015, в основном являются синтаксическим сахаром по сравнению с существующим наследованием JavaScript на основе прототипов. Синтаксис класса не вводит новую объектно-ориентированную модель наследования в JavaScript.

blockquote>

Подробнее здесь

Также, как указано @theMayer в комментарии, сервис, который возвращает user, также может возвращать соответствующий объект User, который имеет прототип функции. Итак, это смещение кода для создания объекта от клиента к сервису. Мне нравится такой подход, просто потому, что это означает, что любой другой потребитель сервиса может использовать поведение (функции) объекта без необходимости дублировать (Object.assign) объект.

Итак, в UserService.ts (или там, где это userService определено), что-то вроде:

getUser(id: string):User {
  //existing logig
  return Object.assign(new User(), user)//--> there are other ways to create object too, this is just one way.
}

7
задан Zartog 14 January 2009 в 15:38
поделиться

5 ответов

Я предлагаю Быстрый Отчет http://fast-report.com/en/ лучший инструмент Report, который я использовал.

Я использовал QuickReport, Отчет о Сильных сторонах, Построитель отчетов и Рейв перед Быстрым Отчетом.

7
ответ дан 7 December 2019 в 05:32
поделиться

ReportBuilder Pro является очень хорошим генератором отчетов для добавления возможностей печати к Вашей программе.

0
ответ дан 7 December 2019 в 05:32
поделиться

Создание HTML и PDFs на самом деле не звучит как это плохо. Печать непосредственно с предоставленным API.

Все ответы до настоящего времени содержат компоненты отчета. Существует серьезное основание - это - самый гибкий и мощный способ распечатать.

1
ответ дан 7 December 2019 в 05:32
поделиться

Я использовал Отчеты о Рейве.

0
ответ дан 7 December 2019 в 05:32
поделиться

Delphi уже не идет с некоторыми компонентами печати? Они должны быть хорошо для нормальной эксплуатации. В более старых версиях это был QuickReport, в наше время это - что-то еще ((отредактированный) Отчет о Рейве)

0
ответ дан 7 December 2019 в 05:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: