一。html
二。directive内的controller不是module下的controller,而是为了暴露出他所含有的函数供别处调用web
三。element.addClass('btn btn-primary');引入bootstrap对样式进行修改chrome
四。directive里,想要让指令暴露方法供别处调用,用controller,而link用来绑定元素之列bootstrap
五。require: '^superman',说明这个指令是依赖于superman指令浏览器
六。restrict – 这个属性用来指定指令在HTML中如何使用(还记得以前说的,指令的四种表示方式吗)。在上面的例子中,咱们使用了 ‘AE’。因此这个指令能够被看成新的HTML元素或者属性来使用。若是要容许指令被看成class来使用,咱们将 restrict 设置成 ‘AEC’。(共有AECM)tomcat
七。link: function(scope, element, attrs, supermanCtrl) 最后一个参数代表所依赖的指令里暴露的controllerapp
八。独立scope:scope:{},是每个指令都是独立的 不会互相影响webapp
九。下一个你须要知道的参数为 replace,顾名思义,这是替换的意思,默认为 false,就是将模版的内容追加到元素中,若是设置为 true,那么模版的内容将会替换元素的内容。函数
原来的输出将会成为下面的样子,实际上,你在页面中将会看不到输出的内容,hello 元素浏览器是不认识的,而其它两种方式,咱们又没有生成任何的元素。ui