V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  windwhinny  ›  全部回复第 1 页 / 共 1 页
回复总数  11
@acemurder
@scola
Android 岗也有的,不过不是我负责,我可以帮你们推一下
@MLing 发简历到我的邮箱吧~~
@kfll 盆地啊,不会地震的,西边的山里才会地震
@aliensb 校招的名额有,但是候选人也很多,你没参加我们公司组织的校招吗?
@mdyh 你是谁。。。
@kfll 杨妹妹要不要来啊
@aliensb 你是谁。。。
@MissHoya 可以啊,发简历来吧
@whypool 要发,发简历来吧
@wengshenshun 校招报名结束了啊
2013-11-14 16:11:07 +08:00
回复了 coolicer 创建的主题 JavaScript AngularJS如何看它的其他参数
首""先回答你的问题,参数都在那个匿名函数的参数列表里。
controller(name,fun)
fun是controller的构建函数,我们需要依赖一些其它库来构建一个controller。这个时候angular就用到了一项技术,叫做依赖注入,dependency inject。
比如说我新建一个controller,需要从服务器上获取点数据,也就是ajax,angular.有个对应的库叫做$http。代码就这样写:
controller("myctrl",function($scope,$http){
....
})
这时候你就可以在构建函数内访问并$http了。如果根据业务扩展的需要,我还要获得并修改浏览器的url,这时候就需要$location:
controller("myctrl",function($scope,$location,$http){
....
})
把$location和$http的位置颠倒也没问题。也就是说如果你需要什么库,直接在构造函数的参数里把需要的东西写出来就行了,angular会自动获取那个库并传递给构造函数。有没有觉得很神奇?!
angular是怎么知道构造函数的参数是什么的?
(function($scope,$http,$location){}).toString()
运行这段代码你就懂了。toString可以将函数的源代码输出成字符串,通过解析这段字符串来得知他的参数以及名称。
但是这样会遇到一个问题,当我使用压缩工具来压缩源码之后,函数的参数名都会变,怎么办?
function($scope,$location,$http){}
压缩后成了
function(a,b,c){}
这时候就需要将构建函数替换为一个数组,数组最后一个元素为构建函数,其它为参数。
controller("myctrl",[
"$scope",
"$location",
"$http",
function(scope,location,http){

}
])
这样就行了
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2424 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 18ms · UTC 16:04 · PVG 00:04 · LAX 08:04 · JFK 11:04
Developed with CodeLauncher
♥ Do have faith in what you're doing.