详解AngularJS1.x学习directive 中‘& ’‘=’ ‘@’符号的区别使用

发布时间 - 2026-01-11 02:55:38    点击率:

对于一个Html5框架的好坏,我们有几个评判标准, 轻量级,可拓展,易复用,速度快。

对组件复用这点,angular以directive的形式展示给开发者,是一个还算不错的选择,作为一个UI组件,必定存在数据交互。

那么数据交互过程中的几个符号我们一定要有所了解,以及他们的区别是什么,防止我们在运用过程中出错。

1. 首先,我们看一scope作用域下面@的使用:

html

<!doctype html> 
<html ng-app='myApp'>  
 <head>   

 </head>  
 <body>    

 <div ng-controller="listCtrl">   
  <input type="text" ng-model="t" /> 
   <test title="{{t}}" > 
    <span>我的angularjs</span> 
  </test> 
</div>  
<script type="text/javascript" src="angular.js"></script> 
<script type="text/javascript" src="main.js"></script> 
</body></html> 

js

var myApp=angular.module('myApp',[]); 
myApp.controller('listCtrl',function($scope){ 
  $scope.logchore="motorola"; 
}); 


myApp.directive('test',function(){ 
  return { 
    'restrict':'E', 
    scope:{ 
      title:"@" 
    }, 
    template:'<div >{{title}}</div>' 

  } 
}); 

这个必须指定的,这里的title是指令里scope的@对应的,t就是控制域scope下的 .

2. = 的使用。

html

<!doctype html> 
<html ng-app='myApp'>  
 <head>   

 </head>  
 <body>    

 <div ng-controller="listCtrl">   
  <input type="text" ng-model="t" /> 
   <test title="t" > 
    <p>{{title}}</p> 
    <span>我的angularjs</span> 
  </test> 
</div>  
<script type="text/javascript" src="angular.js"></script> 
<script type="text/javascript" src="main05.js"></script> 
</body></html> 

js

var myApp=angular.module('myApp',[]); 
myApp.controller('listCtrl',function($scope){ 
  $scope.logchore="motorola"; 
}); 


myApp.directive('test',function(){ 
  return { 
    'restrict':'E', 
    scope:{ 
      title:"=" 
    }, 
    template:'<div >{{title}}</div>' 

  } 
}); 

和上面@相比,这个直接赋值等于scope域下的t了

3. 最好我们看看&符号的使用

html

<!doctype html> 
<html ng-app='myApp'>  
 <head>   

 </head>  
 <body>    

 <div ng-controller="listCtrl">   
   <test flavor="logchore()" ></test> 
</div>  
<script type="text/javascript" src="angular.js"></script> 
<script type="text/javascript" src="main05.js"></script> 
</body></html> 

js

var myApp=angular.module('myApp',[]); 
myApp.controller('listCtrl',function($scope){ 
  $scope.logchore=function(){ 
    alert('ok'); 
  }; 
}); 


myApp.directive('test',function(){ 
  return { 
    'restrict':'E', 
    scope:{ 
      flavor:"&"  
    }, 
    template:'<div ><button ng-click="flavor()"></button></div>' 

  } 
}); 

尝试一下,就明白了,简洁明了!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# angular  # directive  # 符号  # angularjs  # &  # =  # 学习AngularJs:Directive指令用法(完整版)  # AngularJS中的Directive实现延迟加载  # AngularJS入门心得之directive和controller通信过程  # AngularJS中directive指令使用之事件绑定与指令交互用法示例  # Angular之指令Directive用法详解  # 详解angularJs中自定义directive的数据交互  # AngularJS directive返回对象属性详解  # AngularJS中的Directive自定义一个表格  # Angular 根据 service 的状态更新 directive  # AngularJs directive详解及示例代码  # 过程中  # 复用  # 是一个  # 他们的  # 几个  # 有几个  # 作为一个  # 还算  # 速度快  # 大家多多  # 明白了  # ng  # app  # lt  # doctype  # gt  # head  # body  # div  # myApp 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  如何用ChatGPT准备面试 模拟面试问答与职场话术练习教程  济南网站建设制作公司,室内设计网站一般都有哪些功能?  如何用VPS主机快速搭建个人网站?  香港服务器租用费用高吗?如何避免常见误区?  Android自定义listview布局实现上拉加载下拉刷新功能  PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)  C#如何调用原生C++ COM对象详解  千库网官网入口推荐 千库网设计创意平台入口  独立制作一个网站多少钱,建立网站需要花多少钱?  Laravel PHP版本要求一览_Laravel各版本环境要求对照  WEB开发之注册页面验证码倒计时代码的实现  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  如何在建站之星网店版论坛获取技术支持?  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  Laravel storage目录权限问题_Laravel文件写入权限设置  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  简单实现Android文件上传  Linux系统命令中screen命令详解  Android GridView 滑动条设置一直显示状态(推荐)  Bootstrap CSS布局之列表  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  Laravel如何使用Telescope进行调试?(安装和使用教程)  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制  如何快速查询网址的建站时间与历史轨迹?  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  新三国志曹操传主线渭水交兵攻略  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  如何将凡科建站内容保存为本地文件?  Laravel如何使用Livewire构建动态组件?(入门代码)  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  网站制作壁纸教程视频,电脑壁纸网站?  如何快速使用云服务器搭建个人网站?  JavaScript中的标签模板是什么_它如何扩展字符串功能  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  Laravel如何实现一对一模型关联?(Eloquent示例)  Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  如何在IIS中新建站点并配置端口与物理路径?  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南