AngularsJS自定义指令

angularsJS学习——指令调用 ng-app 指令 ng-app指令定义了 AngularJS 应用程序的根元素。 ng-app指令在网页加载完毕时会自动引导(自动初始化)应用程序。 ng-init 指令 ng-init指令为 AngularJS 应用程序定义了初始值。 通常情况下,不使用 ng-init。而是使用一个控制器或模块来代替它。 ng-model 指令 ng-model指令绑定 HTML ... 阅读详情
<!DOCTYPE html>
<html>
	<head>
		<meta charset=utf-8>
		<meta name=description content="">
		<meta name=viewport content="width=device-width, initial-scale=1">
		<title></title>
		<script src="../js/angular.min.js"></script>
	</head>
	<body ng-app="myApp" >
		<!-- 调用-->
		<runoob-directive></runoob-directive>
		
		<script>
		var app = angular.module("myApp", []);
		app.directive("runoobDirective", function() {
		return {
		template : "<h2>自定义指令!</h2>"
		};
		});
		</script>

	</body>
</html>

AngularJS使用 .directive 函数来添加自定义的指令,使用驼峰法来命名一个指令, runoobDirective, 但在使用它时需要以 - 分割, runoob-directive:

AngularJS可以通过以下方式来调用指令:

  • 元素名     <runoob-directive></runoob-directive>
  • 属性 <div runoob-directive></div>
  • 类名 <div class="runoob-directive"></div>
  • 注释 <!-- directive: runoob-directive -->
  • 限制使用方式
通过添加 restrict 属性,并设置只值为 "A", 来设置指令只能通过属性的方式来调用:

restrict 值可以是以下几种:

  • E 作为元素名使用
  • A 作为属性使用
  • C 作为类名使用
  • M 作为注释使用
var app = angular.module("myApp", []);
app.directive("runoobDirective", function() {
    return {
        restrict : "A",
        template : "<h1>自定义指令!</h1>"
    };
});

<body ng-app="myApp" ng-controller="mike">
		<input type="text" ng-model="name"/><br>
		<second/>
		<script>
		angular.module('myApp', []).directive('first', [ function(){
		return {
		// scope: false, // 默认值,共享父级作用域
		// controller: function($scope, $element, $attrs, $transclude) {},
		restrict: 'AE', // E = Element, A = Attribute, C = Class, M = Comment
		template: 'first name:{{name}}',
		};
		}]).directive('second', [ function(){
		return {
		scope: true, // 继承父级作用域并创建指令自己的作用域
		// controller: function($scope, $element, $attrs, $transclude) {},
		restrict: 'AE', // E = Element, A = Attribute, C = Class, M = Comment
		//当修改这里的name时,second会在自己的作用域中新建一个name变量,与父级作用域中的
		// name相对独立,所以再修改父级中的name对second中的name就不会有影响了
		template: 'second name:{{name}}',
		};
		}]).directive('third', [ function(){
		return {
		scope: {}, // 创建指令自己的独立作用域,与父级毫无关系
		// controller: function($scope, $element, $attrs, $transclude) {},
		restrict: 'AE', // E = Element, A = Attribute, C = Class, M = Comment
		template: 'third name:{{name}}',
		};
		}])
		.controller('mike', ['$scope', function($scope){
		$scope.name="张三";
		}]);
		</script>
	</body>

1. 当同时调用first和second时,只有first生效,两个template不会同时出现。

2. 当设置了 scope:{} 之后,{{name}}获取不到了,原因就是作用域的问题,想要设置这里的name的值,可以再加一个controller的字段。




AngularsJS中文API AngularsJS中文API文档,可用,找了好久找了个可用的 立即下载

相关推荐

2025 居民消费结构数据集(21列,15000条记录)XLSX

详情介绍:该数据集为 2025 年 12 个月、1250 户家庭的平衡面板消费数据,15000 行 ×21 列零缺失,覆盖 31 省、城乡均衡,含八大类消费支出和恩格尔系数(均值 0.293,属富裕区间),家庭月收入均值 8473 元、月支出 6487 元,附完整字段说明 sheet,数据干净规整,非常适合做消费结构分析、面板回归、城乡 / 区域差异对比和收入等级分类预测,但为合成数据、仅 1 年时间跨度,不适合做真实政策研究或长期趋势分析。

AngularJs ng-repeat 必须注意的性能问题

AngularJs 的 ng-repeat 让我们非常方便的遍历数组生成 Dom 元素,但是使用不当也会有性能问题。 在项目中我们使用 ng-repeat 加载完一个列表后,如果再次请求数据,然后过滤列表,代码可能会这么写: <div ng-controller="Test"> <button ng-click="request()">请求新数据</...

317

配合上述本地模型资源文件

配合上述本地模型资源文件

ionic-下拉刷新载入数据

html> html ng-app="myApp"> head> meta charset="UTF-8"> meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">

guohao326的博客 541

西电计科数据库系统期末复习笔记

本人西电19计科,数据库系统98,这是复习期间整理的笔记,基本涵盖了课程全部重点,有需要的学弟学妹可以在复习的时候参考一下。

Polaris的博客 8597

笔记汇总 | 斯坦福 CS229 机器学习

本文为斯坦福大学 2014 秋季 CS229 机器学习课程学习笔记本文主体部分转载自黄海广博士,文末已给出,大家有兴趣可以直接访问笔记首页,下载对应课程资料及作业代码。

ReturnTmp的博客 2463

转:大型应用下的 AngularJS 性能

原文地址:http://web.jobbole.com/82060/ 大型应用下的 AngularJS 性能 1 介绍 无论你是为一个拥有大量用户的旧应用编写一个Angalar前端,或已有的Angular应用正在迅速扩张,性能都是一个重要方面。理解什么会导致AngularJS应用程序响应变慢,并且知道在开发过程中对此做出一些权衡是非常重要的。本文将讲述

apple_operation的专栏 743

VHDL实战:基于EDA的数字频率计(FREQ)设计与优化

本文详细介绍了使用VHDL语言和EDA工具设计并优化数字频率计(FREQ)的全过程。从核心原理与模块划分入手,深入讲解了时钟分频、测频控制、计数锁存及显示驱动等关键模块的VHDL实现,并提供了从代码编写、功能仿真到综合布局布线的完整EDA实战指南。文章还探讨了测量精度优化、资源权衡及跨时钟域处理等进阶话题,是掌握FPGA数字系统设计的经典案例。

milk8的博客 583

angularJS 常用的渲染指令、事件指令和节点指令

渲染指令: 1)ng-init: 初始化变量 例:ng-init="cityArr=['上海','北京','杭州']" 2)ng-bind: 绑定模型 例:p ng-bind="1+1">p> 3)ng-bind-template: 绑定模型 不加{{}}则直接绑定内容 例:p ng-bind-template="{{ 1+3 }}">p> 4)ng-re

xuanwuziyou的专栏 1679

学习笔记( 11 ) - 解决:finalshell连接虚拟机(ubuntu)超时,主机ping不通虚拟机,主机没有VMnet8网卡, Connection refused: connect

解决:finalshell连接虚拟机(ubuntu)超时,主机ping不通虚拟机,主机没有VMnet8网卡, Connection refused: connect

烟溪彭于晏的博客 2万+

Ubuntu 22.04 “软件与更新”装了NVIDIA驱动,WiFi等设备不见了

在Win10装了Ubuntu22.04的双系统,台式机里面有NVIDIA 3080Ti的独立显卡,Ubuntu默认使用的nouveau驱动,需要更换成NVIDIA相应的驱动,在软件和更新里面一键安装了NVIDIA-driver-535-server之后,发现wifi、蓝牙等设备消失了。这个问题的根源据说跟这个nouveau驱动有关,希望linux社区可以解决这个问题。命令安装后 sudo reboot就可以重新看到WiFi以及蓝牙等设备图标了。然后用U盘拷贝到不能上网的Ubuntu22.04系统上,利用。

me_ysd的博客 5855

AngularsJS循环

使用 ng-repeat 来循环数组 {{ x }} <div ng-init="names=[ {name:'Jani',country:'Norway'}, {name:'Hege',country:'Sweden'}, {name:'Kai',country:'Denmark'}]"> 循环对象:

nbme的博客 338

国产蓝牙MCU选型避坑指南:从汇顶到杰理,这7家厂商的实测体验

本文基于一线开发者对汇顶、泰凌微、沁恒、博通集成、奉加微、杰理、翱捷等七家主流国产蓝牙MCU厂商的实测体验,提供了一份详实的选型避坑指南。文章不仅对比了各厂商芯片的SDK质量、文档、开发工具与技术支持等“软实力”,还深入剖析了实际开发中可能遇到的功耗、射频、版本兼容性等核心痛点,并针对不同项目需求给出了具体的选型决策建议,旨在帮助工程师高效完成国产蓝牙MCU选型。

u5v6w7的博客 338

AngularsJS中的$parse、$eval

一、$parse服务 $parse服务可以将一个表达式转换为一个函数。这个函数可以被调用,其中的参数是一个上下文对象,通常来说是作用域。 另外,通过$parse的表达式返回的这个函数有一个assign属性。这个assign属性也是一个函数,它可以用来在给定的上下文中改变这个表达式的值。 <div my-attr="obj.name" my-directive>testing</div> app.directive('myDirective',function($log, $pa

书香水墨 281

华为OD机试 新系统 双机位C卷 往年真题 机考题库(持续收录中)以及算法考点详解

每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天优快云在线答疑。

学Java,找哪吒 7万+

核心组件大换血:Backbone与Neck魔改篇:YOLO26结合StarNet结构:2026星状网络在YOLO生态的即插即用实战

本文将介绍如何将StarNet作为Backbone替换YOLO26原生架构,以提升边缘设备上的目标检测性能。文章首先分析了YOLO26在特定场景下的精度瓶颈,指出其通用Backbone设计存在不足。随后深入解析StarNet的核心创新——星操作(Star Operation),这一低维计算却能获得高维特征表达的数学魔术,以及其极简的StarBlock模块设计。通过对比YOLO26原生架构的三大创新与痛点,作者提出两种替换策略:完整替换Backbone或局部替换+Neck联调。文中提供了StarNet核心代码

ZDQ58818的博客 289

与angularsjs兼容的html编辑器

Html编辑器很多,之前我是使用xheditor,但用angularjs重写时,发现用不了,于是上网找了一个口碑不错的kindeditor,但也是用不了。     Kindeditor用不了的原因是,你要使用一个特定id的textarea,然后kindeditor会在document.ready()中将特定id的textarea转换成编辑器;但angularjs只会在index.html第一次读

7 3188

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

angularsjs 对象数组的请求与接收

angularjs

cph758524的博客 823

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

AngularsJs购物车实现表头排序和下拉菜单排序同时进行

var app=angular.module("myApp",[]);             app.controller("myCtrl",function($scope){                 $scope.goods=[{                              id:290,                              name:"ip

xxb52306的博客 344

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

AngularJS基础

AngularJS简介AngularJS 诞生于2009年,由Misko Hevery 等人创建,后为Google所收购,是一款优秀的前端JS框架。 —-参考百度百科AngularJS特性1. MVC 遵循mvc模式,将视图,模型,和控制器分离实现前端解耦合,提高代码的复用性,层次清晰,便于管理和维护,降低开发难度 2. 模块化 AngularJS采用模块化的方式,通过模块

Itellboy 541

Angular.js(四)

ng-class:与css相似, 当样式写在中的时候,可以通过true和false来控制是否添加该样式 {{ text }}ng-style:用法和css中style用法类似 两种用法: (1)当样式写在行间的时候 {{ text }}(2)当样式写在JavaScript中时 var m1 = angular.module('myApp',[]); m1.controller('A',

anran_1211的博客 444

浅谈AngularJS中使用$resource

这个服务可以创建一个资源对象,我们可以用它非常方便地同支持RESTful的服务端数据源进行交互,当同支持RESTful的数据模型一起工作时,它就派上用场了。   REST是Representational State Transfer(表征状态转移)的缩写,是服务器用来智能化地提供数据服务的一种方式  1)我们首先需要引入ng-Resource  模块,在angular之后?12&lt;scrip...

kong_12的博客 636

angularjs中按回车事件_Excel教程:Excel中最靓的键-Ctrl+E键

1、快速添加前缀批量在姓名前面添加前缀“爱知趣-”:在B2单元格输入:爱知趣-仰望,按回车,按<Ctrl+E>键。2、快速英文句首字母大写将A列中的英文语句首字母大写显示:在B2单元格输入:Good morning.,按回车,按<Ctrl+E>键。3、快速从身份证号码中提取出生年月日身份证号码中的第7-14位为出生年月日,该怎么快速提取呢?在B2单元格输入:19840904...

weixin_42433470的博客 111

angularJS中搜索框的用法

angularJS的强大数据绑定功能让一键搜索成为可能,摒弃繁琐的button,让我们一起看一下让喝让搜索逆袭! 首先,HTML页面引入input,    <div class="form-horizontal" ng-controller="ServiceController"> <form> <label for="kw" c...

weixin_30788731的博客 86

不要被惯性思维骗了,AngularJS真的那么完美?

先不说AngularJS优略,至少大部分前端工作者还是对AngularJS有着狂热的推崇的。因为它使开发变得简单。那么问题来了,为什么很多知名网站都没有用到Angular呢? 下面我从几点说起: 1、最糟糕的SEO友好性 2、尴尬的性能问题 3、可以被被诸多解决方案取代的鸡肋 4、应用场景少之又少

Only丿阿海的专栏 3万+
上一篇: AngularsJS循环
下一篇: AngularJs表单验证+仿某Q注册界面
让程序飞
博客等级 码龄10年 8831粉丝 99原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

让程序飞

您的鼓励将是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值