美文网首页我爱编程
通过dialog插件学习angular指令开发

通过dialog插件学习angular指令开发

作者: 我是小明明666 | 来源:发表于2016-11-09 22:34 被阅读214次

    angularJs是google为简化web应用开发所研发出一套MVVM的前端开发框架,小明在学习过程中遇到最难一点就是其插件开发(或者说是指令),这里通过一个简单Dialog对话框例子来简单讲一下angular 指令的几个重要知识点。

项目结构非常简单,一个css文件来控制dialog插件样式,一个js文件来写插件的逻辑和视图模板,另外外部调用插件的方法写在了demo里。

首先我们通过app.directive方式来声明插件名

比如:app.directive("angularDialog",function(){}) ,我们声明了一个叫angularDialog的指令。

我们将所有逻辑写到后面回调函数中。

这里我们看到了有个叫restrict属性,restrict 的取值可以有三种,A代表Attrribute,E表示element,C表示class,一般实际项目中我们只会使用A或E,即在html调用为<angular-dialog></angular-dialog>或

<div angular-dialog></div>

template作用是将视图模板渲染出来

link简单来说是当directive被angular 编译后,执行该方法,function中可以传三个参数scope(当前组件的作用域,element只当前的dom对象,此处为angular-dialog,attrs指当前指令所绑定attributes),我们将指令内部的数据绑定和方法调用都写到link中。

scope属性是这里最难理解的

通过这个例子我们可以看到scope中有三个属性@,&,=,&最好理解,我们将外部方法绑定到插件内部,用&符号就可以了哇,这里我们外部有一个fun方法,通过&就能在指令内部去调用这个fun方法,@和=作用都是数据绑定,区别在于@是单向的,=是双向的,从这个例子中我们可以很清晰看出我们将标题和内容传递到模板中通过@方式即可,但是我们通过外部事件变更指令内部状态则必须使用=。

angularjs指令非常强大,这里只是讲了个皮毛,最后放上demo

https://github.com/minerchow/angularDialog

相关文章

  • 通过dialog插件学习angular指令开发

    angularJs是google为简化web应用开发所研发出一套MVVM的前端开发框架,小明在学习过程中遇到最...

  • n ../../node_modules/@storybook/

    如题,在开发angular插件的时候发现报了如题错误 原因 因为angular版本不匹配。 插件库用的typesc...

  • angular内置指令相关知识

    大纲 1、angular指令的分类2、angular指令之——组件3、angular指令之——属性指令 (ngSt...

  • angular笔记三

    angular第三天 1.自定义指令 官方都是以ng-开头的指令,而angular内部可以通过自定义指令来创建属于...

  • ng-常用指令

    简介 ng指令Angular提供的开箱即用指令,下面这里介绍开发项目中最常用的指令。 ng-mod...

  • Angular2.x 指令

    1. 指令: 在 Angular 中有三种类型的指令:组件 — 拥有模板的指令。 结构型指令 — 通过添加和移除 ...

  • sublime的使用

    1、安装angular插件 2、使用sublime开发小程序 3、用sublime开发小程序

  • angular 中的 DOM 操作

    在angular中使用第三方插件时最好都封装到指令(directives)中去,DOM操作也最好都解构到指令中。避...

  • angular学习(指令)

    指令:是给原生的html标签添加一些新的属性,使得html标签可以实现某些功能 解决闪烁:用ng-clock这个插...

  • Angular 知识点记录二

    9. 指令概览 在 Angular 中有三种类型的指令: 组件 — 拥有模板的指令 结构型指令 — 通过添加和移除...

网友评论

    本文标题:通过dialog插件学习angular指令开发

    本文链接:https://www.haomeiwen.com/subject/oiytpttx.html