一个Demo就懂的Angular之directive

 1 <body>
 2         <div ng-controller="myCtrl">
 3               <hello-word></hello-word>
 4         </div>
 5
 6         <script type="text/javascript">
 7             angular.module(‘app‘,[])
 8             .directive(‘hello-word‘,function($document){
 9                 return {
10                     /***
11                         ‘E‘:<hello-word></hello-word>
12                         ‘A‘: <div hello-word ></div>
13                         ‘C‘: <div class="hello-word: exp;"></div> Class 类名
14                         ‘M‘: <!-- directive: hello-word exp --> Comment 注释
15                     */
16                     restrict: ‘E‘,
17                     // templateUrl: 代表一个路径下的html片段
18                     template: ‘<div>hello word!!!</div>‘,
19                     //替换掉原标签
20                     replace: true,
21                     /**
22                         对特定的元素注册事件。需要用到scope参数来实现dom元素的一些行为
23                         function link(scope, element, attrs, controller) { ... }
24                         在link阶段要执行的函数,这个属性只有当compile属性没有设置时才生效
25                         常用参数为scope,element和attrs,分别是当前元素所在的scope,dom元素和元素上的属性们,其它的以后细说
26                         directive基本上都会有此函数,可以注册事件,并与scope相绑
27
28                     */
29                     link: function(scope, element, attrs){
30                         angular.element(element).bind(‘click‘,function(){
31                             alert(‘hello word!!!!‘);
32                         })
33                     },
34                     /**
35                         想在dom渲染前对它进行变形,并且不需要scope参数
36                         想在所有相同directive里共享某些方法,这时应该定义在compile里,性能会比较好
37                         返回值就是link的function,这时就是共同使用的时候
38                     */
39                     compile: function(){
40
41                     }
42                 }
43             })
44             .controller(‘myCtrl‘,function($scope,$location){
45
46             });
47       </script>
48 </body>
时间: 2024-10-13 00:58:54

一个Demo就懂的Angular之directive的相关文章

angular开发者吐槽react+redux的复杂:“一个demo证明你的开发效率低下”

曾经看到一篇文章,写的是jquery开发者吐槽angular的复杂.作为一个angular开发者,我来吐槽一下react+redux的复杂. 例子 为了让大家看得舒服,我用最简单的一个demo来展示react+redux的“弯弯绕”,下面这个程序就是我用react和redux写的.然而这个程序在angular中一行js都不用写!!! 展示组件 App.js import React, { findDOMNode, Component } from 'react'; import ReactDOM

Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)

在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等. 下面就来说说经常会使用到通知机制中的通知栏框架(Notificaiton),它适用于交互事件的通知.它是位于顶层可以展开的通知列表.它会时不时的提醒你什么软件该更新了,什么人发你微信消息了等. (网上看了下,全面介绍的文章不多,所以就萌生了写这篇的念头,随便当作回顾笔记.下面我就通过官方文档.源代码

Android 通知栏Notification的整合 全面学习 (一个DEMO让你全然了解它)

在android的应用层中.涉及到非常多应用框架.比如:Service框架,Activity管理机制,Broadcast机制.对话框框架.标题栏框架,状态栏框架.通知机制,ActionBar框架等等. 以下就来说说常常会使用到通知机制中的通知栏框架(Notificaiton).它适用于交互事件的通知.它是位于顶层能够展开的通知列表. 它会时不时的提醒你什么软件该更新了,什么人发你微信消息了等. (网上看了下,全面介绍的文章不多,所以就萌生了写这篇的念头.随便当作回想笔记. 以下我就通过官方文档.

关于angular 自定义directive

关于angular 自定义directive的小结 首先我们创建一个名为"expander"的自定义directive指令: angular.module("myApp",[]).directive("expander",function(){ return{ //directive的一些属性(键值对形式)如下: /* restrict:'EA', replace:true, transclude:true, scope:{...}, templ

Flask---使用Bootstrap新建第一个demo

Flask---使用Bootstrap新建第一个demo 参考自http://www.jianshu.com/p/417bcbad82fb 还有<Flask web开发> 前端用到Bootstrap开源框架,Bootstrap是客户端框架,后台当然就是Flask了. 服务器需要做的只是提供引用了Bootstrap层叠样式表(CSS)和JS文件的html响应,并且在html.css和js代码中实例化需要的组件,这些操作的最理想的执行环境就是模板 关于模板的介绍及其实现原理:https://kb.

Node.js 的第一个 demo 和本地服务器配置

安装nodejs这里就不叙述了,直接上nodejs官网下载就好了,初学者建议直接下载安装版,无需自己去编译.nodejs安装版和安装其他软件一样,无门槛. 安装nodejs后启动node.js,会打开一个类似黑色的系统命令框,这里是直接输入js代码的命令框,因此在这里输入 node -v 会提示你没有 node 这个命令,如: 如果你想安装其他的包,如 express 等,就需要在开始菜单里面找到 Node.js command prompt 或者 直接运行 cmd 进入命令行. 进入命令行后,

Java学习 (一)、下载,配置环境变量,第一个demo

一.在 http://www.oracle.com 下载java JDK 安装到自定义的地方. 二.配置环境变量:在我的电脑→高级系统设置→环境变量 ① 找到Path新增一个路径(该路径为JDK存放的位置的bin,比如我放在D:\J2EE\JDK1.8.0\bin 下),两个路径之间要加分号隔开 ② 为了防止路径改变,可以新增一个变量,变量名自定义,变量值为JDK存放路径. 然后在Path 下新增一个路径为 %JAVA_HOME%\bin  即可. 保存后 运行(win+R) cmd 键入jav

用一个例子读懂 RequireJS

用一个例子读懂 RequireJS 例子来自官方,我稍微改造了一下,如下: // project.html <!DOCTYPE html> <html>     <head>         <title>requirejs</title>         <!-- data-main attribute tells require.js to load              scripts/main.js after require.

如何看eclipse中的崩溃信息?用一个demo教会你

我相信很多android初学者用刚开始都是用的Eclipse开发工具,并且很多初级书籍也不会教大家怎么去看崩溃日志,虽然不难,但是靠自己琢磨还是挺浪费时间的,我们就写一个Demo来看看吧! 注释掉一行代码,让程序崩溃 注释掉创建ViewHolder对象的代码,让程序崩溃. MainActivity中展示一个ListView 这个Demo很简单,就是在MainActivity中展示一个ListView,<第一行代码>中的例子. 现在我们注释掉了创建ViewHolder对象的代码,连上手机,运行程