一:自定义指令常用模板
下面是大致的说明,不是全面的,后面来具体说明一些没有提及的细节和重要的相关知识:
二:一些属性说明
【scope】
可以设置boolean或者对象,先来说说boolean,这个比较简单:
1.当设置true的时候,表示继承父scope,是一个子scope;
2.当设置false的时候,直接使用父scope。
还有一种对象设置方法,就是设置一种隔离的scope,在使用隔离scope的时候,提供了三种方法同隔离之外的地方交互,下面用一个例子来一一说明:
<input ng-model="_userD<a href="https://www.jb51.cc/tag/atan/" target="_blank" class="keywords">atan</a>ame"/>
<ul>
<li>fromName={{newfromname}}</li>
<li>这是从父级<a href="https://www.jb51.cc/tag/huoqu/" target="_blank" class="keywords">获取</a>到的{{_userD<a href="https://www.jb51.cc/tag/atan/" target="_blank" class="keywords">atan</a>ame}}</li>
</ul>`,link: function($scope,attrs) {
//使用@符号可将本地作用域的变量与DOM<a href="https://www.jb51.cc/tag/shuxing/" target="_blank" class="keywords">属性</a>的值进行绑定,即这里通过@得到<a href="https://www.jb51.cc/tag/fulei/" target="_blank" class="keywords">父类</a>fromName的值
$scope.newfromname = $scope._fromName;
$scope._useParentMethod = function() {
//使用&符号可以在其中<a href="https://www.jb51.cc/tag/diaoyong/" target="_blank" class="keywords">调用</a><a href="https://www.jb51.cc/tag/fulei/" target="_blank" class="keywords">父类</a>的<a href="https://www.jb51.cc/tag/fangfa/" target="_blank" class="keywords">方法</a>
$scope._onSend({ "email": { "email": "yelloxing@gmail.com" } });
console.log($scope._userD<a href="https://www.jb51.cc/tag/atan/" target="_blank" class="keywords">atan</a>ame);
};
}
};
}]);
上面是指令的写法,下面来看看控制器里面有什么:
最后别忘了html里面的使用: