다음은 AngleJS에서 $attrs 메서드를 사용하는 예입니다. 코드 복사 코드는 다음과 같습니다. 无标题文档 http://localhost:81/js/jquery.js</a>"><br> http://localhost:81/js/angular.min.js</a>"><br> a_directive 原始内容 原始内容 原始内容 修改 这里 <br> var app = angular.module('Demo', [], angular.noop);<br> app.controller("TestCtrl",<br> function($scope) {<br> $scope.name = "qihao";<br> });<br> app.directive("t",<br> function() {<br> return {<br> controller : function($scope){$scope.name = "qq"},<br> template : "<div>test:implementToParent{{name}}</div>",<br> replace : true,<br> scope : true //作用域是继承的,默认就是继承的<br> }<br> });<br> app.directive("t2",<br> function() {<br> return {<br> controller : function($scope){$scope.name = "nono"},<br> template : "<div>test:implementToParent{{name}}</div>",<br> replace : true,<br> restrict : "AE"<br> }<br> });<br> app.directive("t3",<br> function() {<br> return {<br> template : "<div>test:implementToParent_titleIs:{{title}}<br>title2Is:{{title2}}</div>",<br> 바꾸기: 참,<br> 제한: "AE",<br> 범위 : {<br> 제목 : "@t3",<br> title2 : "@title2"<br> }<br> }<br> });<br> app.directive('a',<br> 함수() {<br> var func = 함수() {<br> console.log('컴파일');<br> 반환 함수() {<br> console.log('링크');<br> }<br> }<br> var 컨트롤러 = function($scope, $element, $attrs, $transclude) {<br> //$transclude :是指令标签的复絓<br> console.log('컨트롤러');<br> console.log($scope);<br> console.log($transclude);<br> //$transclude接受两个参数,你可以对这个克隆의 元素进行操작동,<br> var 노드 = $transclude(function(clone_element, 범위) {<br> $element.append(clone_element);<br> $element.append("<span>spanTag___</span>");<br> console.log(clone_element);<br> console.log('--');<br> console.log(범위);<br> });<br> console.log(노드);<br> }<br> 반환 {<br> 컴파일: func,<br> 템플릿: "<h1 ng-transclude></h1>",<br> 컨트롤러: 컨트롤러,<br> 포함: 사실,<br> 제한: 'AE'<br> }<br> });<br> app.directive('compile',function() {<br> var func = 함수() {<br> console.log('컴파일');<br> 반환 {<br> 사전: 함수() {<br> console.log('링크 사전')<br> },<br> 게시물: function() {<br> console.log('링크 게시물')<br> },<br> }<br> }<br> 반환 {<br> 제한: "AE",<br> 컴파일 : func<br> }<br> })<br> app.directive('테스트', function(){<br> var func = 함수($element, $attrs){<br> console.log($attrs);<br> $attrs.$observe('a', 함수(new_v){<br> console.log(new_v);<br> });<br> }<br> {컴파일: func,<br>을 반환합니다. 제한: 'E'}<br> });<br> app.controller('TestCtrl', function($scope){<br> $scope.a = 123;<br> });<br> app.directive('te', function(){<br> var func = 함수($scope,$element, $attrs,$ctrl){<br> console.log($ctrl)<br> //$attrs.$set. 给这个属性设置b,值为oooo,就是这样<br> $attrs.$set('b', 'ooo');<br> $attrs.$set('a-b', '11');<br> //좀 불분명합니다 //두 번째 매개변수 값<br> $attrs.$set('c-d', '11', true, 'c_d');<br> console.log($attrs);<br> }<br> 반품 {<br> 컴파일: function(){<br> 반환 기능<br> > 제한: 'E'<br> }<br> });<br> app.controller('TestCtrl', function($scope){<br> $scope.show = function(v){console.log(v);}<br> });<br> > </본문><br> </div>