在Angular中,$controller
有两个参数 - constructor
和locals
。
文档基本上只是说:
locals
是一个对象。但我仍然不明白它的作用。任何人都可以详细说明吗?
答案 0 :(得分:9)
"当地人"允许您将注入定义到控制器中 - 即它定义了$injector
只能为该控制器定位的对象(例如,与可以使用.factory
定义的应用程序范围的注入相对)。 / p>
最好的例子是一个例子:
var controller = $controller("Controller1", {
foo: {
v: "I am foo"
}
});
然后,您的实际控制器可以注入foo
:
.controller("Controller1", ["$scope", "foo", function($scope, foo){
$scope.fooVal = foo.v;
}]);
这是一个非常罕见的情况(单元测试除外),您需要在代码中直接使用$controller
- 这里是一个奇怪的example where you can。但是,ui-router
和ng-route
使用了$id = ?; // id
$selectqup = $db->prepare("SELECT
emp_id,
emp_name,
emp_salary
FROM employee WHERE emp_id=:THEID LIMIT 1");
$selectqup->bindValue(':THEID',$id,PDO::PARAM_INT);
$selectqup->execute(); $ct = $selectqup->rowCount();
while($row = $selectqup->fetch(PDO::FETCH_ASSOC)){
$emp_id = $row['emp_id'];
$emp_name = $row['emp_name'];
$emp_salary = $row['emp_salary'];
}
来定义状态/路由的控制器。