2016-08-04 4 views
0

У меня есть приложение angularjs, у которого есть таблица с разбиением на страницы. Это приложение вызывает вызов REST API, который возвращает данные в формате JSON в мое угловое приложение. Эти данные представлены в виде таблицы с разбивкой на страницы. (Скажем, приложение) Мне нужно экспортировать всю эту информацию в pdf.Экспорт в PDF с помощью AngularJS

До сих пор я использовал подход, который нашел here.

Мне удалось экспортировать в pdf, но только первая страница экспортируется, а не та, которая имеет разбиение на страницы.

Я нашел много ссылок с stackoverflow для экспорта в pdf с помощью angularjs. Но ни у кого из них не было информации об обработке части страницы.

Может кто-нибудь помочь мне получить всю таблицу (которая отображается с разбивкой на страницы) в pdf? Любой другой подход также будет прекрасным.

+0

Это просто слишком широко. Вы захотите по крайней мере попробовать разные подходы и обсудить их, предоставив код, который работал частично или вообще не работал. В противном случае вы просто попросите кого-нибудь написать полное решение. –

ответ

0

У меня была та же проблема. Как я решил это, я создал другую страницу .html, которая распечатывала всю таблицу (без разбивки на страницы, потому что то, что вы используете для экспорта таблицы, печатает только то, что находится в DOM). Таким образом, с вашего контроллера вы можете отправить свою таблицу $ scope.tableData на новую .html-страницу, распечатать таблицу, загрузить файл и закрыть html-страницу. Да, это требует открытия новой вкладки, и после ее загрузки вы можете автоматически закрыть.

Мой код выглядел как-то

$window.localStorage['tableData'] = JSON.stringify($scope.tableData); $window.open('#/download'); и в том же контроллере я имел

if ($location.path() === '/download')...//download function and 
$window.close(); 

Я использовал $ window.localStorage, чтобы получить данные в новую вкладку, потому что мои данные были довольно большими, я не знаю, разумно это или нет, но это было решение в то время.

Смежные вопросы