Перекомпилировать угловую директиву?

0

OK У меня есть приложение Meteor, которое использует угловой метеор, я использую blaze, чтобы добавить шаблон в autoform, используя textAngular, который является просто простой угловой директивой,

После обновления формы Meteor/Blaze/Autoform повторно отображает форму, которая, в свою очередь, вырывает область действия из моей пользовательской директивы.

Как я могу переустановить угловую директиву "textAngular" после того, как Autoforms изменит форму?

Я предполагаю, что я должен использовать событие Template.NAME.rendered которое отлично работает, когда он вызывает после ререйдера, но как я могу заставить углы перекомпилировать директиву?

Вы можете найти весь пакет здесь и свою особую попытку rerenderign здесь

Любая помощь в значительной степени зависит от вас!

Крис

Теги:
meteor
angular-meteor

1 ответ

0

Хорошо, я сделал это так:

Template.autoFormTextAngular.rendered = function () {
  if(!$(this.firstNode).hasClass('ta-root')){        
    // create an injector
    var $injector = angular.injector(['ng', 'textAngular']);
    // use the injector to kick off your application
    // use the type inference to auto inject arguments, or use implicit injection
    $injector.invoke(function($rootScope, $compile, $document) {
      $compile($document)($rootScope);
      $rootScope.$digest();
    });
  }

};

не уверен, есть ли более простой способ, но hey ho это работает...

Ещё вопросы

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