I am trying to make a directive with different patterns based on the scope value.
This is what I have done so far and I don’t know why http://jsbin.com/mibeyotu/1/edit is not working
HTML element:
<data-type content-attr="test1"></data-type>
Directive
var app = angular.module('myApp', []); app.directive('dataType', function ($compile) { var testTemplate1 = '<h1>Test1</h1>'; var testTemplate2 = '<h1>Test2</h1>'; var testTemplate3 = '<h1>Test3</h1>'; var getTemplate = function(contentType){ var template = ''; switch(contentType){ case 'test1': template = testTemplate1; break; case 'test2': template = testTemplate2; break; case 'test3': template = testTemplate3; break; } return template; }; var linker = function(scope, element, attrs){ element.html(getTemplate(scope.content)).show(); $compile(element.contents())(scope); }; return { restrict: "E", replace: true, link: linker, scope: { content:'=' } }; });
angularjs angularjs-scope angularjs-directive
Jack Apr 14 '14 at 16:21 2014-04-14 16:21
source share