Angularjs 角度指令在链接函数中手动编译+;嵌入
我需要在link函数中进行转换和手动编译,我想知道是否有比我在下面粘贴的“动态”更好的方法。它似乎在工作,但我不确定删除Angularjs 角度指令在链接函数中手动编译+;嵌入,angularjs,angularjs-directive,Angularjs,Angularjs Directive,我需要在link函数中进行转换和手动编译,我想知道是否有比我在下面粘贴的“动态”更好的方法。它似乎在工作,但我不确定删除ng transclude属性的后果是什么,我正在删除它,因为错误:[ngTransclude:orphan]在模板中非法使用ngTransclude指令!未找到需要转换的父指令。元素: 底线是,我需要为该指令的不同实例提供不同的模板,并回退到通用模板 我不能使用编译部分。在这里我有一个简单的例子,但我也有其他情况下与大链接功能,我宁愿不想转换,因为这应该只是“黄金子弹”类型的
ng transclude
属性的后果是什么,我正在删除它,因为错误:[ngTransclude:orphan]在模板中非法使用ngTransclude指令!未找到需要转换的父指令。元素:
底线是,我需要为该指令的不同实例提供不同的模板,并回退到通用模板
我不能使用编译部分。在这里我有一个简单的例子,但我也有其他情况下与大链接功能,我宁愿不想转换,因为这应该只是“黄金子弹”类型的调整
这个小家伙可以在这里找到原形
起初的
动态
蒂亚 这可能会有帮助-
angular.module('ultimateDataTableServices')
.directive('udtForm', function () {
return {
restrict: 'A',
replace:true,
transclude:true,
templateUrl:'udt-form.html',
link: function(scope, element, attr) {
}
};
});
angular.module('ultimateDataTableServices')
.directive('udtForm', ['$compile', '$templateCache', function ($compile, $templateCache) {
return {
restrict: 'A',
transclude:true,
link: function(scope, element, attr, ctrls, transclude) {
var tplName = 'udt-form.html',
tplPath = scope.udtTable.configMaster.templates[tplName] || scope.udtTable.configMaster.templatesMaster[tplName] || tplName,
elem = angular.element($templateCache.get(tplPath));
elem.find('[ng-transclude]').removeAttr('ng-transclude').append(transclude());
element.replaceWith($compile($templateCache.get(tplPath))(scope));
}
};
}]);