Как вызвать функцию печати после загрузки страницы?

0

Итак, щелкнув, я хочу вызвать функцию печати, но после частичной загрузки страницы? Я не хочу использовать $ timeout, я пробовал с угловым.элементом (документ). Уже, но частичное представление отображается после того, как функция печати называется. Любое предложение?

EDIT: Я пробовал:

   var w = $window.open("/account/ticketprint");
 angular.element(document).ready(function () {
           w.print();
});
Теги:

2 ответа

1
Лучший ответ

Вам нужно привязать к событию onload окна страницы, а затем распечатать...

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope, $window) {
  $scope.name = 'World';
  $scope.print = function() {
    var w = $window.open($window.location.href + '#/?_=2323232');
    console.log(w);
    angular.element(w).bind('load', function() {
      w.print();
    });
  };
});

Plunk: http://plnkr.co/edit/DDGsWBnwmfjWHCrKwxlZ?p=preview

  • 0
    Вы можете прийти в дискуссионный чат немного больше?
0

Есть два способа сделать это

1. $ timeout(): - он будет запускаться в следующем цикле дайджест после отображения html

2. $ scope. $ EvalAsync(): - он будет выполняться до того, как угловой получится на Html

Таким образом, вы можете использовать

  • 0
    я ничего не могу найти о $ scope. $ async
  • 0
    Это была ошибка типа .. см. Новый отредактированный ответ

Ещё вопросы

Сообщество Overcoder
Наверх
Меню