Javascript AngularJs创建模板指令

Javascript AngularJs创建模板指令,javascript,angularjs,templates,Javascript,Angularjs,Templates,我想创建更多的模板指令。 所选模板取决于某个值(如模板类型)。 然后,如果我在html页面中调用我的指令,并更改类型模板类型,则需要更改html模板。 像这样: <template-factory template-type={{foo}}></template-factory> 我想我可以创建一个包含所有模板的html模板,并从ng中选择帮助。但我认为这不是很好。 请帮助我,为此任务选择最佳解决方案。有趣的是,在指令中,您可以将函数作为模板传递,然后返回用于模板的

我想创建更多的模板指令。 所选模板取决于某个值(如模板类型)。 然后,如果我在html页面中调用我的指令,并更改类型模板类型,则需要更改html模板。 像这样:

<template-factory template-type={{foo}}></template-factory>

我想我可以创建一个包含所有模板的html模板,并从ng中选择帮助。但我认为这不是很好。
请帮助我,为此任务选择最佳解决方案。

有趣的是,在指令中,您可以将函数作为模板传递,然后返回用于模板的字符串

看看这是如何做到的,以及利弊

从:


谢谢你,乔伊。你帮了我很多忙。
angular.module('docsTemplateUrlDirective', [])
.controller('Controller', ['$scope', function($scope) {
  $scope.customer = {
    name: 'Naomi',
    address: '1600 Amphitheatre'
  };
}])
.directive('myCustomer', function() {
  return {
    templateUrl: function(elem, attr){
      return 'customer-'+attr.type+'.html';
    }
  };
});