在上篇中,掌管数据绑定的 $scope 对象是自动传给我们的,用它的时候,我们仅仅是简单的把它放到 HelloController 构造函数中而已。
在之后的小节中我们会发现,$scope 不是唯一能够被我们这样呼来唤去的东西。例如,我要数据绑定用户浏览器的地址栏的 location,我们可以把专门用户掌管这个功能的对象放到我们的构造函数中去,这个对象叫做 $location,像这样:
function HelloController($scope,$location) { $scope.greeting = { text: "hello" }; // use $location for something good here... }之所以能够这么胡作非为,是缘于 Angluar 的 dependency injection system (依赖注入系统)。“依赖注入”让我们能够按照这种开发方式:instead of creating dependencies,our classes just ask for what they need. 可以这样理解:“依赖的东西(对象)是自动被注入到代码中去的。” 这种做法是基于“德米特法则”,即“最少知识原则”。 这种特性 isn’t just for objects created by the Angular framework. You can write the rest of this code as well.