在指令中动态加载templateUrl

时间:2015-11-26 09:42:38

标签: javascript angularjs angularjs-directive angularjs-scope

我在指令中定位了正确的模板url值,因为我的指令console.log()显示但模板没有加载。

指令:

// printController.printFormatter = formatter // cancelled
let printRenderer = UIPrintPageRenderer()
printRenderer.addPrintFormatter(formatter, startingAtPageAtIndex: 0)
printController.printPageRenderer = printRenderer

模板:

app.directive('customtemp', function($parse) {
  var x="";
   return {
        scope: {
      tempUrl:"=" 
    },       
       link: function(scope, element, attrs) {
           console.log(scope.tempUrl);  
           x = scope.tempUrl;
       },
      templateUrl: x
   }
});

我在这里缺少什么,第二次返回templateUrl?

1 个答案:

答案 0 :(得分:0)

您可以使用ng-include来执行此操作,我认为您不能像使用它一样使用它。

       link: function(scope, element, attrs) {
           scope.getContentUrl = function() {
                return attrs.tempUrl;
           }
       },
       template: '<div ng-include="getContentUrl()"></div>'