首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

AngularJS入门心得1——directive和controller如何通信

1.AngularJS是何方神圣   Angular JS (Angular.JS) 是一组用来开发Web页面的框架、模板以及数据绑定和丰富UI组件。...今天主要来说说AngularJS三个指令“@”,“=”,“&”用法和区别(这个问题困扰了我大半天,和Frank交流多次,我才明白)   1.指令作用域中@   作用是把当前属性作为字符串传递。   ...3.指令作用域中&   主要作用是传递一个来自父scope函数,稍后调用。 1 <!...,属性名后面是一个方法,所以,这里&主要用于在Controller和directive之间传递函数,实现两者之间函数通信,在JS,将前台greeting标签替换为template内容,一个输入框加上一个按钮...,按钮上绑定了greet函数,与前台页面的greet相呼应,前台greet函数在控制器中有定义,所以指令也是调用控制器greet函数。

1.7K60

AngularJS基础入门初探

首先,最大好处是用户体验,对于内容改动不需要加载整个页面。这样做好处颇多,因为数据层和UI分离,可以重新编写一个原生移动设备应用程序不用(对原有数据服务部分)大动干戈。...2.2 体验双向数据绑定   新建一个HTML页,输入一下内容: 绑定一个叫name模型变量。   (3)双大括号标记将name模型变量添加到问候语文本。   ...(3)ng-app指令作用在于声明当前DOM被AngularJS这个库定义一个模块所托管,ng-model指令则用于绑定模型变量,ng-click绑定控制器声明事件。...   (2)完善app.js,在其中写入angular关键代码 (function (window) { // 01.注册一个应用程序主模块(module方法如果之传入一个参数不是创建一个新模块

1.8K30
您找到你想要的搜索结果了吗?
是的
没有找到

【Hybrid开发高级系列】AngularJS(一)——基础专题

$event将事件对象传递controller。         ...内聚是指模块或者对象内部完整性,一组紧密联系逻辑应该被封装在同一模块、对象等代码单元不是分散在各处;耦合则指模块、对象等代码单元之间依赖程度,如果一个模块修改,会影响另一个模块,则说明这两模块之间是相互依赖紧耦合...moduleInstance实例,这就形成了流畅API,推荐使用链式定义这些组件,不是声明一个全局module变量。         ...在这段代码,用户在输入输入数据名字称作query,会立刻作为列表迭代器(phone in phones | filter:query`)其过滤器输入。...注意在第二条路由声明:phoneId参数使用。route服务使用路由声明/phones/:phoneId作为一个匹配当前URL模板。

40780

【AngularJS】 # AngularJS入门

HTML 元素提供 CSS 类 绑定 HTML 元素 HTML 表单 将输入值($scope)与 AngularJS 创建变量绑定 <div ng-app="myApp" ng-controller...($scope){ // scope作为参数传递 $scope.carName = "Volvo"; // 声明一个变量 }) 4.2....外部文件控制器 将 标签代码复制 **.js 外部文件 HTML中进行引入即可 <div ng-app="myApp" ng-controller="personCtrl...AngularJS 依赖注入 依赖注入(DI):是一种软件设计模式,在这种模式下,一个或更多<em>的</em>依赖(或服务)被注入(或者通过引用<em>传递</em>)<em>到</em>一个独立<em>的</em>对象(或客户端)<em>中</em>,然后成为了该客户端状态<em>的</em>一部分。...-- 该 div 内<em>的</em> HTML <em>内容</em>会根据路由<em>的</em>变化<em>而</em>变化 --> /// 包含 ngRoute 模块<em>作为</em>主应用模块<em>的</em>依赖模块

23.1K60

【AngularJS】—— 12 独立作用域

类似上面的这种场景,在任何一个输入框内改变数据,都会导致其他标签内数据一同发生改变,这显然不是我们想要。   这个时候就需要独立作用域了。...在指令定义,添加了scope:{say:'@'}这个键值对属性,也就是说,angular会识别say所绑定东西是一个字符串。   在模板,使用表达式{{say}}输出say所表示内容。...2 testname对应输入输入值。   3 然后把这个变量当做一个参数传递给xingoo这个标签name属性。   ...4 在xingoo标签,又把这个name绑定模板一个输入框内。   最终两个输入内容被连接起来,无论改变哪一个输入框内值,testname与name都会发生改变。 ?   ...在指令定义,模板替换成一个输入框,一个按钮:   输入框:用于输入username,也就是三个方法需要参数name。   按钮:点击触发函数——通过绑定规则,绑定相应方法。 ?

1.3K80

第217天:深入理解Angular双向数据绑定原理

ng-bind:将angular变量显示页面。...3.ng-model = “eparator” ng-model指令用于建立数据模型,在模型对应有一个变量username用来存放input元素value值从而绑定了输入 scope (应用程序...6.angular.module('name', requires); 使用angular.module()方法来声明模块。 参数说明: 第一个name是模块名称,字符串变量。...尝试改变一下input值你会发现 “姓名”值也自动发生了变化,是不是很神奇?比jquery来操作dom是不是简单很多? 代码详解: 当网页加载完毕,AngularJS 自动开启。...input元素value发生变化,自动同步model firstName 变量,{{ firstName }}}是从模型读 firstName 值,因此下面姓名中元素内容跟着变了。

3.6K20

Angularjs1.X进阶笔记(1)—两种不同双向数据绑定

这里就是 Angularjs1.X双向数据绑定第一个坑 ,你会发现$scope上绑定数据模型和html显示内容有时候并不是实时关联。这其实和Angularjs1.X执行机制有关系。...2.1 directive双向数据绑定 在设定自定义指令scope参数时,将属性值设置为=就可以实现双向数据绑定,这里API解释是: 父级controller指定变量会与自定义指令link...官方建议使用$watch方法来追踪scope变量当我们这样做时,会发现$watch函数仅能追踪那些通过修改controller数据模型影响link函数变量行为并更新视图。...其基本过程是这样,每当我们使用ng-model或ng-bind指令将数据模型某个变量值和html页面上某个标签内容联系起来时,Angular就会把这些变量放进一个WatchCollection集合...,直到某一次遍历后WatchCollection变量都没有变化,则Angular会认为当前改动已经稳定了,然后才会将数据模型变化同步DOM元素上去,也就实现了数据绑定。

3.4K20

AngularJS入门心得4——漫谈指令scope

没关系,我们不care,不是所有的参数我们都要掌握,更不是所有的参数我们都会在平常编程开发中用到。...指令内部可以访问外部指令作用域,并且模板也可以访问外部作用域对象。为了将作用域传递进去,scope参数值必须通过{}或true设置成隔离作用域。...显示my-dialog.htmldiv标签。同时,{{name}}能够读取到指令外作用域,即控制器scope.name值。   ...通过这种声明,表明directive有了自己独立scope,但是这种scope会在directive实例化时候将外部控制器变量全部复制自己scope作用域中。...这就造成最后输出结果还是Tobias,不是Jeff。 5.

1.9K60

AngularJS浅谈-博客

ng-model 指令把元素值(比如输入值)绑定应用程序。 ng-bind 指令把应用程序数据绑定 HTML 视图。...AngularJS 使用$scope 对象来调用控制器。 在 AngularJS , $scope 是一个应用象(属于应用变量和函数)。...ng-model 指令绑定输入控制器属性(firstName 和 lastName)。 记住一点:在大型应用程序,通常是把控制器存储在外部文件。...只需要把 标签代码复制名为 js文件.js 外部文件即可,然后在script引用js文件: 接下来说一下AngularJs核心集中特性吧!! 先来个图!...那我们在js代码定义模块和ng-app有什么关系呢?很明显,它是告诉AngularJS应用在启动时加载指定模块,假设这里ng-app只是放一个纯标签,不给它赋值。

2.4K30

前端三大框架vue,angular,react大杂烩

1.1、它实现原理:    $scope变量中使用脏值检查来实现。像ember.js是基于setter,getter观测机制,    $scope.$watch函数,监视一个变量变化。...函数有三参数,”要观察什么”,”在变化时要发生什么”,以及你要监视是一个变量还是一个对象。    使用ng-model时,你可以使用双向数据绑定。    使用$scope....$watch时只为它传递了一个参数,无论作用域中什么东西发生了变化,这个函数都会被调用。在ng-model,这个函数被用来检查模型和视图有没有同步,如果没有同步,它将会使用新值来更新模型数据。...2、视图渲染 Angular1    AngularJS工作原理是:HTML模板将会被浏览器解析DOM, DOM结构成为AngularJS编译器输入。...React 和 Angular 2 都有服务端渲染和原生渲染功能。Vue.js不使用 Virtual DOM 而是使用真实 DOM 作为模板,数据绑定真实节点。

2.9K90

前端三大框架vue,angular,react大杂烩

1.1、它实现原理:    $scope变量中使用脏值检查来实现。像ember.js是基于setter,getter观测机制,    $scope.$watch函数,监视一个变量变化。...函数有三参数,”要观察什么”,”在变化时要发生什么”,以及你要监视是一个变量还是一个对象。    使用ng-model时,你可以使用双向数据绑定。    使用$scope....$watch时只为它传递了一个参数,无论作用域中什么东西发生了变化,这个函数都会被调用。在ng-model,这个函数被用来检查模型和视图有没有同步,如果没有同步,它将会使用新值来更新模型数据。...2、视图渲染 Angular1    AngularJS工作原理是:HTML模板将会被浏览器解析DOM, DOM结构成为AngularJS编译器输入。...React 和 Angular 2 都有服务端渲染和原生渲染功能。Vue.js不使用 Virtual DOM 而是使用真实 DOM 作为模板,数据绑定真实节点。

2.1K60

达观数据对AngularJS技术思考与实践

AngularJs最迷人一点便是双向数据绑定,AngularJS工作原理是:HTML模板将会被浏览器解析DOM, DOM结构成为AngularJS编译器输入。...Js路由配置: 模版template: ng-view 是一个用来包含当前路由(/home, /about, or /contact)模板angular指令, 它会获得基于特定路由文件并将其诸如主布局...任何过滤器参数都会被当成附加参数传递给过滤器。 ? 可以通过 | reverse 方式使用reverse过滤器。...一般获取依赖有三种方式,用new操作符创建依赖,通过全局变量查找,依赖需要时被导入。前两种方式都不是很好,因为它们需要对依赖硬编码,使得修改依赖时候变得困难。...1)作用域原型继承:原型继承时对变量赋值不会修改原型值,而是直接在当前scope创建一个同名属性;但如果是变量是对象,则不会创建。即基本类型会重新创建变量,引用则不会。 ?

5.4K150

angularjs学习第五天笔记(第二篇:表单验证升级篇)

您好,我是一名后端开发工程师,由于工作需要,现在系统从0开始学习前端js框架之angular,每天把学习一些心得分享出来,如果有什么说不对地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家点评与赐教..."width:40px;" /> <script src="Scripts/<em>angular</em>.<em>js</em>...}) }) } } })   第二、表单验证提示信息显示处理优化 上面的表单验证<em>的</em>提示信息在体验上<em>不是</em>很友好...,同一个<em>文本框</em>有可能同时显示多个提示信息     新版本<em>的</em>angularjs<em>中</em>,引入了ngMessages指令,用于更加友好<em>的</em>处理方式  ngmessages同时指出提示模板引入,通过ng-messges-include..."> var

1.5K30

angularjs学习第五天笔记(第二篇:表单验证升级篇)

您好,我是一名后端开发工程师,由于工作需要,现在系统从0开始学习前端js框架之angular,每天把学习一些心得分享出来,如果有什么说不对地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家点评与赐教..."width:40px;" /> <script src="Scripts/<em>angular</em>.<em>js</em>...}) }) } } })   第二、表单验证提示信息显示处理优化 上面的表单验证<em>的</em>提示信息在体验上<em>不是</em>很友好...,同一个<em>文本框</em>有可能同时显示多个提示信息     新版本<em>的</em>angularjs<em>中</em>,引入了ngMessages指令,用于更加友好<em>的</em>处理方式  ngmessages同时指出提示模板引入,通过ng-messges-include..."> var

1.6K10

第214天:Angular 基础概念

)   + 内容全部是由AJAX方式呈现出啦 - 其核心就是通过指令扩展了 HTML,通过表达式绑定数据 HTML。...)使用 CDN 上 Angular.js   + http://apps.bdimg.com/libs/angular.js/1.4.9/angular.min.js (3)使用 Bower 安装   ...- 视图   + 给用户呈现一个表单   + 接受用户输入内容,并将其提交给控制器   + 根据控制器返回数据,响应用户页面 2、模块(Module) AngularJS很重要一个特性就是实现模块化编程...// 监视购物车内容变化,计算最新结果 $scope....$watch(‘totalCart’, calculateDiscount); $scope(上下文模型) 视图和控制器之间桥梁 用于在视图和控制器之间传递数据 利用$scope暴露数据模型(数据,行为

1.9K30
领券