controller 有两种写法,讨论一下两种写法的区别:

写法 1:

app.controller(‘myCtrl‘, function($scope, $location) {
    $scope.myUrl = $location.absUrl();
});

写法2:

app.controller(‘myCtrl‘, ["$scope","$location",function($scope,$location) {
    $scope.myUrl = $location.absUrl();
}]);

两种写法都是对的,但是推荐第二种写法,因为第一种写法在 js 压缩后会出问题,而第二种写法可以完美应对 js 压缩,原因是:js 压缩后,变量名会重命名,故第一种写法会报错。

上面的例子第 2 种写法还可以这样:

app.controller(‘myCtrl‘, ["$scope","$location",function(a, b) {
    a.myUrl = b.absUrl();
}]);

原文地址:https://www.cnblogs.com/Andrew520/p/9892144.html

时间: 2024-11-07 10:46:42

controller 有两种写法,讨论一下两种写法的区别:的相关文章

接下来的两年你可能需要这五种语言(转载)

对于处在编程世界的我们来说,现在已经走到了一个转折点.十年前,程序员们对动态语言趋之若鹜.对我们中的大部分人来说, 动态语言不仅使编程变得更加简单,同时也意味着一种时尚.时至今日,动态语言不再享有特别的青睐,现在的程序员使用新语言和旧语言的搭配来开发项目.我不 禁要问,为了保持自身的竞争力,哪些编程语言是程序员们最需要永久掌握的? 在我们讨论哪些编程语言在未来会吃香这个问题之前,先来看看不同编程语言之间的的异同. 静态语言 vs. 动态语言 当我们说到动态语言时,这个“动态”实际上说的是变量类型

两表(多表)关联update的写法 .

原文:两表(多表)关联update的写法 . 关于两表关联的update,可以把SQL写成了在SQL Server下面的特有形式,但是这种语法在Oracle下面是行不通的 update customers a    set    city_name=(select b.city_name from tmp_cust_city b where b.customer_id=a.customer_id)   where  exists (select 1                   from 

世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么? 输入例子: 1999 2299 输出例子: 7

这是小米2015年暑假实习生第一道笔试题,其实不难,主要用到移位操作和或运算符就可以搞定,具体代码如下: /*世界上有10种人,一种懂二进制,一种不懂.那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么? 输入例子: 1999 2299 输出例子: 7 */ #include<stdio.h> int countBitDiff(int m, int n) { int data=1; int a,b; int count=0; for(int i=0;i<31;i+

四棵树怎么种才能使任意两颗之间距离相等

1.从宏观来看,把这四颗树看成四个质点 第一种办法是把它们种在一起,这样两两之间距离都为0: 第二种办法是使它们形成一个三棱锥,比如可以在山顶种一棵树,在山脚分三个方位种三棵树:或者在坑底种一棵树,坑外面分别种三棵树. 2.从微观来看,这四颗树都是有形状的,那么重点就在于他们之间的“距离”怎么定义. 第一.如果这四颗树不是笔直(树干长歪了,考虑树冠.枝干和叶子)的话,那么需要根据它们具体的形状来给出具体的解决方案,有兴趣的同学可以由此开发一个仿生数学模型: 第二.如果这四颗树都是笔直的,那么它们

JavaScript中交换两个变量的值得三种做法(代码实现)

javascript在编程时经常会涉及到如何交换两个变量的值,例如常见的冒泡排序,快速排序等:下面我讲根据自己近期所学总结几种常见的交换两个变量值的方法: 方法一:借助第三方变量交换两个变量的值 var num1=20; var num2=50; var temp=num1; num1=num2; num2=temp; console.log(num1);//在控制台输出交换后的num1=50 console.log(num2);//在控制台输出交换后的num2=20 方法二:借助加法计算,交换

【编程题目】四对括号可以有多少种匹配排列方式?比如两对括号可以有两种:()()和(())

46.搜狐(运算):四对括号可以有多少种匹配排列方式?比如两对括号可以有两种:()()和(()) 跟12个人排高矮的题目差不多. 用 0 表示 “(”,用 1 表示“)” 则需要数字二进制最低8位有 4个1和 4个0,且从低位到高位对1 和 0 计数时,0 出现的次数不能超过 1 出现的次数. /* 46.搜狐(运算): 四对括号可以有多少种匹配排列方式?比如两对括号可以有两种:()()和(()) */ #include <stdio.h> int c_bits(int n) { int re

css 两列自适应布局的4种思路

前面的话 前面已经介绍过css 两列布局中单列定宽单列自适应布局的6种思路的两列布局,而两列自适应布局是指一列由内容撑开,另一列撑满剩余宽度的布局方式.本文将从float.table.flex和grid来介绍两列自适应布局的4种思路 float [思路一]float 在单列定宽单列自适应的两列布局中,经常用float和负margin配合实现布局效果.但由于margin取值只能是固定值,所以在两列都是自适应的布局中就不再适用.而float和overflow配合可实现两列自适应效果.使用overfl

WPF_MVVM 开发的几种模式讨论

在WPF系(包括SL,WP或者Win8)应用开发中,MVVM是个老生常谈的问题.初学者可能不会有感觉,但当你写一个核心逻辑能在各种平台上无缝移植,而只需改改UI的时候,那种快感是无法用语言来形容的. 笔者当初接触时,对MVVM并不以为然,编了很多代码以后,反过来看MVVM for WPF的经典文章以后,才若有顿悟.标准的MVVM把程序分成了Model, ViewModel和 View三个部分,但方法是死的,人是活的.我一般的做法是逻辑写一个,View写一个,没有那么严格.为了方便讨论,我们把Vi

不同页面之间实现参数传递的几种方式讨论

不同页面之间实现参数传递的几种方式讨论(黎声)   由于web系统采用http协议在浏览器和服务器之间传输数据,而http协议是一种无状态的协议,如何在不同页面之间传递数据,可以有一下几种方式 方式一:表单方式传递   表单传递参数是一种最简单,也是最基本的参数传递方式.注意:表单元素隐藏按钮的使用 方式二:带参数的url方式传递   带参数的url写法: url?参数名1=值1&参数名2=值2. 方式三:请求request对象   可以将数据绑定到request对象上,通过request对象g