OK У меня есть приложение Meteor, которое использует угловой метеор, я использую blaze, чтобы добавить шаблон в autoform, используя textAngular, который является просто простой угловой директивой,
После обновления формы Meteor/Blaze/Autoform повторно отображает форму, которая, в свою очередь, вырывает область действия из моей пользовательской директивы.
Как я могу переустановить угловую директиву "textAngular" после того, как Autoforms изменит форму?
Я предполагаю, что я должен использовать событие Template.NAME.rendered
которое отлично работает, когда он вызывает после ререйдера, но как я могу заставить углы перекомпилировать директиву?
Вы можете найти весь пакет здесь и свою особую попытку rerenderign здесь
Любая помощь в значительной степени зависит от вас!
Крис
Хорошо, я сделал это так:
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 это работает...