AngularJS标准Web业务流程开发框架-4.AngularJS四大模块之一:Controller

一、Controller的创建

angular.controller("name",funtion($scope){

})

1.name:控制器的名称(建议参考Java包的命名规范:点的方式进行命名);

2.function:回调函数的构造方法(实际是对象,主要考虑到类的调用);

3.$scope相当于mvvm模式的viewmodel,支持变量、函数;

3.1.$ccope的由来:

$injector注射完成后创建的$rootScope(根作用域root Viewmodel,$scope的父类)

3.2.$scope的作用

3.1.1.视图和控制器的数据传递桥梁

3.1.2.封装脏值检查(dirtychecking),触发脏值检查的条件:

  1)$scope.$dirty(暴力脏值检查,慎用)

  2)$scope.$apply(基于$dirty的封装)

  3)$开头的服务调用

  4)ng开头的指令触发  

4.控制器的创建支持链式写法;

二、嵌套Controller值传递

1.内层控制器的值会覆盖外层控制器的值,内层控制器不存在变量的值,外层控制器的值会作用于内层控制器的值;

2.内层控制器获取外部控制器的值通过($scope.$parent)的方式获取,多层嵌套则层层上抛;

三、平行Controller值共享

通过$rootScope进行传值

原文地址:https://www.cnblogs.com/witkeydu/p/9070142.html

时间: 09-14

AngularJS标准Web业务流程开发框架-4.AngularJS四大模块之一:Controller的相关文章

angularJs项目实战!03:angularjs与其他类库的协作

引言:angularjs是一个中等重量级的前端开发框架 HTML是一门很好的为静态文本设计的语言,但要构建动态的web应用它就显的乏力了.通常,我们使用以下技术来解决静态网页技术在构建动态应用上的不足: 1.类库:类库是一类函数的集合,它能帮助你写web应用.这里起主导作用是你的代码,由你来决定何时使用类库.典型的类库,例如prototype.jquery等. 2.框架:框架式一种特殊的.已经实现的web应用,你只需要填充具体的业务逻辑.这里框架是起主导作用的,由它根据具体的逻辑来调用你的代码.

angularJs项目实战!03:angularjs与其他类库的协作(转)

angularjs,在我看来是个中等重量级的框架.即不像backbone那么简单,也不像dojo和Yui那么包罗万象.很多时候,妄图包罗万象,往往会出现很多子模块的质量高不成低不就,并且修改起来较为困难.过分精简,则框架内容单薄需要写的内容太多.angularjs这种相对中庸的风格,则非常符合我的需求. 目前,AngularJS三个我认为最为精妙的组件就是数据绑定(Scope),指令(Directive)和依赖注入(Dependency Injection),表现得非常好.相对而言,它的UI组件

Oracle免费的便捷Web应用开发框架

Oracle免费的便捷Web应用开发框架 APEX 总体来说,APEX是我见过最便捷最高效的开发框架,用起来比PHP还舒服.上手简单,学习成本极低,曾经有个做行政的小女生,在我指导下两天就可以开发出简单的审批管理站点.如果企业要做一些内部应用,APEX是上上之选. 相比起我用过的其他框架,有两个特点是APEX独一无二的: 在线编辑,无桌面IDE. 使用SQL和PL/SQL语言开发. 下图是APEX开发界面: APEX依靠数据库来执行业务逻辑及生成html页面.页面的各种布局.控件模板是存储在数据

angularjs源码分析之:angularjs执行流程

angularjs用了快一个月了,最难的不是代码本身,而是学会怎么用angular的思路思考问题.其中涉及到很多概念,比如:directive,controller,service,compile,link,scope,isolate scope,双向绑定,mvvm等.最近准备把这些都慢慢搞懂,分析源码并贴到博客园,如有分析不对的地方,还望各位包容并指正. angularjs源码分析之:angularjs执行流程 先上个大图,有个大概印象,注:angularjs的版本为:1.2.1,通过bowe

使用Visual Studio在标准Web Part 部件中创建事件处理器

使用Visual Studio在标准Web Part 部件中创建Event Handler 为Web Part部件创建Events是生成Web Parts部件的核心部分.本文主要讲解如何使用Visual Studio在标准Web Part 部件中创建事件处理器. 1. 打开Visual Studio 创建新的空白SharePoint项目SPWebPartEvent,点击确定.部署为场解决方案. 2. 右击项目添加新Web部件SampleEventWebPart.点击确定. 3. 打开Sample

windows下如何快速搭建web.py开发框架

在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方便和顺手,就是web.py.它由一名黑客所创建,但是不幸的是这位创建者于2013年自杀了.据说现在由另外一个人在维护和更新.现在就来了解一下windows下如何搭建web.py开发环境. 一.安装web.py 在 https://github.com/webpy/webpy上下载web.py安装包.

标准Web系统的架构分层

标准Web系统的架构分层 – 转载请注明出处 1.架构体系分层图 在上图中我们描述了Web系统架构中的组成部分.并且给出了每一层常用的技术组件/服务实现.需要注意以下几点: 系统架构是灵活的,根据需求的不同,不一定每一层的技术都需要使用.例如:一些简单的CRM系统可能在产品初期并不需要K-V作为缓存:一些系统访问量不大,并且可能只有一台业务服务器存在,所以不需要运用负载均衡层. 业务系统间通信层并没有加入传统的HTTP请求方式.这是因为HTTP请求-响应的延迟比较高,并且有很多次和正式请求无关的

OpenCV 的四大模块

前言 我们都知道 OpenCV 是一个开源的计算机视觉库,那么里面到底有哪些东西?本文将为你解答这个问题. 模块一:CV 这个模块是 OpenCV 的核心,它包含了基本的图像处理函数和高级的计算机视觉算法. 模块二:HighGUI 这个模块包含了图像和视频的基本 GUI 输入输出函数. 模块三:MILL 这个模块是计算机学习库,包含一些基于统计的分类和聚类工具. 模块四:CXCORE 这个模块包含了基本数据结构和一些最基本的函数.上面四个模块都要调用此模块. 下图可形象表述OpenCV的五大模块

[angularjs] MVC + Web API + AngularJs 搭建简单的 CURD 框架

MVC + Web API + AngularJs 搭建简单的 CURD 框架 GitHub 地址:https://github.com/liqingwen2015/Wen.MvcSinglePage 布局页的引用 <script src="~/Scripts/jquery-1.10.2.min.js"></script> <script src="~/Scripts/bootstrap.min.js"></script&g

AngularJs学习第一章(来自angularJS菜鸟教程)

AngularJS是一个JavaScript框架,它可以通过<script>标签添加到HTML页面.是一个JavaScript编写的库 AngularJS通过指令扩展了HTML,且通过表达式绑定数据到HTML 最好放在<body>元素的底部这样会提高网页加载速度,因为HTML加载不受制于脚本加载. AngularJs扩展了HTML--四大指令 1.Angular 通过ng-dircctives扩展了HTML 2.ng-app指令定义一个AngularJs应用程序 3.ng-mode