AngularJS依赖注入
1.隐式注入:不需要开发人员干预,angularJS自动根据参数的名称识别和注入数据
app.controller("myCtrl".function($scope) {
$scope.name="xiaoming"
})
隐式注入如果一但要进行优化,就会存在问题
2.显式注入:开发人员通过字符串描述,告诉angular需要注入的对象名称,这样JS
在进行优化的过程中,对字符串是不会压缩的,显式的进行依赖描述
app.controller("myCtrl",["$scope",function(s){
s==$ssope
}])
项目实际开发过程中使用显式注入方式! html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
</head>
<body>
<div ng-app="myApp">
<div ng-controller="secondController"> </div>
<div ng-controller="otherController"> </div>
</div> <script type="text/javascript" src="../../vendor/angular/angularJs.js"></script>
<script type="text/javascript" src="app/index.js"></script> <script>
</script> </body>
</html>

  js:

var myApp = angular.module('myApp', [], function () {

})
//隐式的依赖注入
// .factory('CustomeService', function ($window) {
// console.log($window);
// })
//显示的依赖注入
.factory('CustomService',['$window',function (a) {//a参数就是$window
console.log(a);
}])
//隐式的依赖注入
.controller('secondController', function ($scope, CustomService) { })
// //显式的依赖注入(推荐使用)
// .controller('secondController', ['$scope', '$filter', function (a, b) {
// console.log(b('json')([1, 2, 3, 4, 5]));
// }]) function otherController(a) {
console.log(a);
}
otherController.$inject = ['$scope']; //此处的$scope就是上面的参数a

  

												

angularJS1笔记-(7)-控制器的合理使用(显示和隐式的依赖注入)的更多相关文章

  1. Intent 显示意图 隐式意图

    //显式意图  :必须指定要激活的组件的完整包名和类名 (应用程序之间耦合在一起) // 一般激活自己应用的组件的时候 采用显示意图  //隐式意图: 只需要指定要动作和数据就可以 ( 好处应用程序之 ...

  2. C#接口的显示和隐式实现

    早上骑车上班走到半路发现手机忘带了,这年代兜里没装一分现金,吃饭都要刷手机,上班时间无聊了不能玩手机更是大问题,所以果断掉头拿手机.取完手机刚出门看这天阴沉沉的貌似要下雨,没雨衣,骑车又不能打伞,上次 ...

  3. C# 转换符的重载 显示、隐式转换

    class Complex { //保存转换的值 Int32 v; public Complex(Int32 x) { v = x; } public Int32 ToInt32() { return ...

  4. Android中显示和隐式Intent的使用

    显示启动activity                                                                                         ...

  5. label标签的显示和隐式关联问题

    按钮的html <!-- 学校 --> <div class="layui-inline"> <label class="layui-for ...

  6. Android中Intent的显示和隐式使用

    Android应用程序中组件之间的通信都少不了Intent的使用,Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件, ...

  7. 【Selenium】显示、隐式等待

    显示等待 WebDriverWait 超时抛出TimeOutException,默认500毫秒 public class WaitToReturnElement { /* * 设置超时时间为5秒,返回 ...

  8. interface Part3(实现:显示和隐式)

    1. 接口的实现实际上和类之间的继承是一样的,也是重写了接口中的方法,让其有了具体的实现内容. 2. 但需要注意的是,在类中实现一个接口时必须将接口中的所有成员都实现,否则该类必须声明为抽象类,并将接 ...

  9. python+selenium基础篇,三种等待方式,显示、隐式、强制等待

    1.显示等待: from selenium import webdriver from time import sleep from selenium.webdriver.support.ui imp ...

随机推荐

  1. c语言指针篇

    不保证绝对正确,学习中所记录的一些笔记罢了,可能随着经历的增多,逐渐的完善, 不要完全相信我所记录的内容,可能因为编译协议版本的不同出现不同的结果. 也可能我写的根本就是错的,请相信自己动手得出来的结 ...

  2. oracle中查找锁定状态的用户

    SQL> desc dba_users;desc dba_users; 名前 NULL? 型 ----------------------------------------- -------- ...

  3. 04 - django的路由层 1

    1.路由控制简单配置 from django.conf.urls import url from . import views urlpatterns = [ url(r'^articles/2003 ...

  4. 1444: [Jsoi2009]有趣的游戏

    1444: [Jsoi2009]有趣的游戏 链接 分析: 如果一个点回到0号点,那么会使0号点的概率增加,而0号点的概率本来是1,不能增加,所以这题用期望做. 设$x_i$表示经过i的期望次数,然后初 ...

  5. noip2017 PJ AK记

    嗨小朋友们大家好,还记得我是谁吗?我就是为RE代言的蒟蒻--xzz day1 蛤?四楼只有一个考场???在逗我 然后解压 蛤?空军68年????我怎么不知道???huaji 蛤?T1这么sb?切掉 蛤 ...

  6. ssm 配置事务回滚

    参考:https://blog.csdn.net/Mint6/article/details/78363761 在 applicationContext.xml 中配置好了事务和数据源等必须要用到的配 ...

  7. Python之subprocess模块、sys模块

    一.subprocess模块 # import os # os.system('tasklist') #类似cmd输入系统命令 ''' subprocess的目的就是启动一个新的进程并且与之通信. s ...

  8. 用vs2012编译cocos2dx-3.9

    这几天想玩一下cocos2dx3.9新版本的东西,但是公司电脑配置不够,开个vs2012都卡的不行,更别提高版本的了.因为cocos2dx-3.9中使用了好多c++11的规范,而vs2012有好多C+ ...

  9. Unity扩展编辑器二

    Unity支持自行创建窗口,也支持自定义窗口布局,在Project视图中创建一个Editor文件夹,在文件夹中创建一条脚本 自定义窗口需要让脚本继承EditorWindow在设置MenuItem,此时 ...

  10. oracle的多表合并查询-工作心得

    本随笔文章,由个人博客(鸟不拉屎)转移至博客园 发布时间: 2018 年 11 月 29 日 原地址:https://niaobulashi.com/archives/oracle-select-al ...