博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
angular组件开发
阅读量:6507 次
发布时间:2019-06-24

本文共 1065 字,大约阅读时间需要 3 分钟。

项目中经常会有一些公共组件,比如header,如果每个页面都写一遍的话显得很冗余,而且不利于维护,这时候我们就会考虑将这些公共部分抽取出来,做成一个单独的组件。

然而angular不是很熟悉啊~怎么啵~

折腾了一下,才发现angular的组件开发主要依赖自定义指令(directive )来实现。

主要使用到directive的几个属性,如下:

restrict: 使用驼峰法来命名,用来限制指令通过特定的方式来调用,默认值为 EA

  • E 作为元素名使用,如<my-directive></my-directive>

  • A 作为属性使用,如<div my-directive></div>

  • C 作为类名使用,如<div class="my-directive"></div>

  • M 作为注释使用,如<!-- directive: my-directive -->

scope: 指定作用域

  • false 默认值,共享父级作用域

  • true 继承父级作用域并创建指令自己的作用域

  • {} 创建指令自己的独立作用域,与父级毫无关系

templateUrl: 用来指定模板文件的url,如templateUrl: 'header'

template:设置模板,如template:'这是一条指令'

controller:控制器

比如如果创建一个header组件,我们先新建一个文件夹header.html

这里是标题

返回
这里是右边的文字

接着新建directive.js

angular.module('myHeader', ["zz.rule"])  .directive('myHeader', function() {    return {      restrict: 'A',      templateUrl: 'header',      controller: function($scope, $element, $attrs) {        // 返回上一页        $scope.goBack = function(event) {};      }    };  })

好了,到这里一个组件就穿件好了,那么问题来了,怎么使用呢?

其实就跟平成引入插件一样一样的

创建index.html

angular.module('mymodel', ["myHeader"])

超级简单有没有,赶紧get起来

转载地址:http://fjzfo.baihongyu.com/

你可能感兴趣的文章
关于 Linux
查看>>
图文解析五大外链误区
查看>>
ios开发之导航控制器的原理
查看>>
《Netkiller Blockchain 手札》Hyperledger Fabric Java SDK Demo
查看>>
Spring cloud 安全部署与性能优化
查看>>
querySelector 和 querySelectorAll区别
查看>>
Linux系统_Centos7下安装Nginx
查看>>
《PHP和MySQL Web 开发》 第12章 MySQL高级管理
查看>>
数据库设计 Step by Step (6) —— 提取业务规则
查看>>
深入理解java异常处理机制
查看>>
Redis客户端redisson实战
查看>>
连接到 JasperReports Server
查看>>
java处理高并发高负载类网站问题
查看>>
使用C#生成随机密码(纯数字或字母)和随机卡号(数字与字母组合)
查看>>
CAS服务器端集群
查看>>
Android内存泄漏的常见场景及解决方案
查看>>
设计模式 之 访问者模式
查看>>
用JS获取地址栏参数的方法
查看>>
JAVA Collections框架
查看>>
更改Windwos server 2003 域用户密码策略默认配置
查看>>