Angular:
http://angularjs.org/
HTML
<script type="text/ng-template" id="X-template.html">
X template
{{prova}}
</script>
<script type="text/ng-template" id="Y-template.html">
Y template
{{prova}}
</script>
<div ng-controller="MyCtrl">
<my-directive type="X"></my-directive>
<my-directive type="Y"></my-directive>
</div>
JavaScript
var app = angular.module('myApp',[]);
app.directive('myDirective', function() {
return {
restrict: 'E',
compile: function(element, attrs) {
element.append('<div ng-include="\'' + attrs.type + '-template.html\'"></div>');
},
controller: function($scope) {
$scope.prova = 'internal';
}
}
});
function MyCtrl($scope) {
$scope.prova = 'external';
}