angular-控制器
controller 控制器
四、作用域:($rootScope)对整个页面相当于全局变量
也就是只要是用$rootScope定的东西它一定是作用于全局,而其它的只是对它控制器所在的那一部分
列如:
<body ng-app="app">
{{haha}} 这里是鸣人
<div ng-controller="ctrl">
{{name}} 小潘
{{age}} 200
{{haha}} 这里是鸣人
</div>
<div ng-controller="ctrl2">
{{name}} 小西
{{age}} 188
{{haha}} 这里便是鸣人
</div>
<script> //定义 app模块
angular.module('app',[])
.controller('ctrl',function($scope,$rootScope){
$ scope.name="小潘!"
$scope.age = 200;
$rootScope.haha = '鸣人!';
})
//不同的写法,第二个参数是一个数组
.controller('ctrl2',["$scope",function($scope){
$ scope.name = '小西';
$scope.age = 188;
}])
</script>
</body>
</html>
五、$watch (观察看守的意思)
<body ng-controller="ctrl">
<h1>{{name}}</h1>
<input ng-model="name"/>
<script>
angular.module('app',[])
.controller('ctrl',function($scope,$timeout){
$scope.name = "鸣人!"
$scope.$watch(function(){
console.log($
scope.name)
})
setTimeout(function(){
//手动触发angular的脏检查
$scope.$apply(function(){ 请求传送
$scope.name = '小樱!'
})
},2000) 2000是设置时间2秒后 setTimeout(function(){
console.log('-------------')
$scope.name = '佐助!';
},2000);
以上蓝色部分是不会修改其上name的因为js代码里面是没办法对其更改的
$timeout(function () {
$scope.name = "卡卡西";
}, 4000);
})
</script>
</body>
第一次是鸣人
2秒后便是小樱
4秒后变为卡卡西
六、过滤器:
lowercase 格式化字符串为小写
uppercase 格式化字符串为大写
用法:注意中间管道符 |
<div ng-app="myApp" ng-controller="personCtrl">
<p>姓名为 {{ name | lowercase }}</p> 姓名为eee(转换为了小写)
</div>
angular.module('app',[])
.controller('myApp',function($scope,$timeout){
$scope.name = "EEE"
})
currency 过滤器(将数字格式化为货币格式)
<div ng-app="myApp" ng-controller="personCtrl">
<p>姓名为 {{ name | lowercase }}</p> 姓名为$123,456.00(转换为了小写)
</div>
angular.module('app',[])
.controller('myApp',function($scope,$timeout){
$scope.name = "123456" 数字
}) 2、date 格式化
{{1490161945000 | date:"yyyy-MM-dd HH:mm:ss"}} // 2017-03-22 13:52:25
3、number 格式化(保留小数)
{{149016.1945000 | number:2}}
angular-控制器的更多相关文章
- angular控制器常用的4种通信方式
首先概括一下angular控制器通信的4种方式: 作用域继承. 通过$scope广播事件. 事件发射器模块. 服务. 1.作用域的继承 子作用域可以访问声明在它们的祖先作用域中的变量和函数. < ...
- angular 控制器之间的通信
1, 利用作用域的继承方式 由于作用域的继承是基于js的原型继承方式,所以这里分为两种情况,当作用域上面的值为基本类型的时候,修改父作用域上面的值会 影响到子作用域,反之,修改子作用域只会影响子作用域 ...
- Angular控制器
这里使用的是angular-1.0.1.min.js Angular的前端渲染 <div> <ul> <li ng-repeat="i in [1,2,3]&q ...
- angular控制器之间的传值
每个controller都会有自己的scope,所有的scope都是属于 $rootScope的子或者子的子... 那么问题就好解决了,通过 $rootScope.$broadcast 广播的事件每个 ...
- angular控制器、服务和指令三者之间的关系
从总体来看,这三个组件的关系如下所示: 服务负责从远端服务器抓取和存储数据. 基于服务构建的控制器将为angular的作用域层次提供数据和功能. 基于服务和控制器构建的指令将直接与文档对象模型(DOM ...
- angular控制器的执行顺序和服务的注入情况
这篇文章到底要讲什么呢? 这必须要从栗子开始讲起... 看下面这两段代码: demo1: http://jsfiddle.net/ujzmvp3j/1/ demo2: http://jsfiddle. ...
- 简话Angular 02 Angular控制器-作用域嵌套
一句话: 就是孩子可以啃老,老子不能动孩子一根毛! * 子控制器有父控制器里变量的所有权限,可以读取,也可以修改. * 父控制器不能读,也不能修改孩子的变量 1. html代码 <div ng- ...
- angular 控制器的使用两种模式
angular.module("myApp",[]) .controller("firstCtrl",["$scope",function( ...
- angular 控制器之间值得传递
<div ng-controller="ParentCtrl"> <!--父级--> <div ng-controller="SelfCtr ...
- angular控制器controller里获取不到ng-model的值,获取为undefined
所遇问题: html:ng-model=“test”, 但是在controller里打印的$scope属性里面并未发现test,控制台打印test为undefined,页面上{{test}}却可以正常 ...
随机推荐
- Ubuntu 通过apt安装VSCode
1. sudo vim /etc/apt/sources.list.d/vscode.list 并向里面添加:deb [arch=amd64] http://packages.microsoft.co ...
- 画布Canvas 画笔Paint
package com.example.m_evolution.View; import android.content.Context; import android.graphics.Canvas ...
- promise之我见
在我们平时的方法中有很多方法是promise封装的, 有些函数后边跟的then和catch 就是promise的方法,先看一下pormise的特点 (1)对象的状态不受外界影响.Promise对象代表 ...
- asp.net asp.net application 升级到 asp.net web 解决找不到控件 批量生成.designer文件
颇费周折后,其实很简单,只需要生成designer文件后,重新保存所有页面即可.就是懒得写.懒真的是一种病,手上不能懒,脑子里更不能懒,否则就是给自己挖坑,仔细认真,注意细节!!!! PS:注意修改p ...
- Node.js前端程序通过Nginx部署后刷新出现404问题的解决办法
方案一 (这种方式容易被第三方劫持) location / { root /data/nginx/html; index index.html index.htm; error_page 404 /i ...
- 10.Redis分布式集群
10.Redis分布式集群10.1 数据分布10.1.1 数据分布理论10.1.2 Redis数据分区10.1.3 集群功能限制10.2 搭建集群10.2.1 准备节点10.2.2 节点握手10.2. ...
- robotframework 连接mysql数据库
1.安装databaselibrary.pymysql 通过cmd命令执行:pip install robotframework-databaselibrary 通过cmd命令执行:pip insta ...
- 进程哪一个cpu
问题:我有个 Linux 进程运行在多核处理器系统上.怎样才能找出哪个 CPU 内核正在运行该进程? 当你在 多核 NUMA 处理器上运行需要较高性能的 HPC(高性能计算)程序或非常消耗网络资源的程 ...
- MySQL数据库时间查询
/*当前时间加1毫秒*/ SELECT DATE_ADD(NOW(),INTERVAL 1 MICROSECOND); /*当前时间减1毫秒*/ SELECT DATE_ADD(NOW(),INTER ...
- 201771010134杨其菊《面向对象程序设计(java)》第十五周学习
第十五周学习总结 第一部分:理论知识 JAR文件: 应用程序首选项存储: Java Web Start JAR文件: 1.Java程序的打包:程序编译完成后,程序员将.class文件压缩打包为.jar ...