<!DOCTYPE html>
<
html
ng-app
=
"myApp"
>
<
head
>
<
script
src
=
</
script
>
<
style
>
h1 {
color: green;
}
button {
color: white;
background-color: black;
height: 30px;
width: 160px;
padding: 3px;
margin: 5px;
border-radius: 5px;
}
</
style
>
</
head
>
<
body
ng-controller
=
"MyController"
>
<
center
>
<
h1
>GeeksforGeeks</
h1
>
<
my-directive
user
=
"user"
></
my-directive
>
</
center
>
<
script
>
angular.module('myApp', [])
.directive('myDirective', function ($compile) {
return {
restrict: 'E',
scope: {
user: '='
},
template: '<
div
>' +
'<
h3
>Name: {{user.name}}</
h3
>' +
'<
button
ng-click="showDetails '+
'= !showDetails">Toggle details</
button
>' +
'<
div
ng-if
=
"showDetails"
>' +
'<
p
>Age: {{user.age}}</
p
>' +
'<
p
>Email: {{user.email}}</
p
>' +
'<
p
>Address: {{user.address}}</
p
>' +
'<
p
>Phone: {{user.phone}}</
p
>' +
'</
div
>' +
'</
div
>',
link: function (scope, element, attrs) {
scope.showDetails = false;
var template = '<
div
>' +
'</
div
>';
var linkingFn = $compile(template);
var detailsElement = linkingFn(scope);
element.append(detailsElement);
}
};
})
.controller('MyController', function ($scope) {
$scope.user = {
name: 'Geek',
age: 25,
address: 'Door no-101, Delhi',
phone: '999999999999'
};
});
</
script
>
</
body
>
</
html
>