在下面的代碼,語法訪問rootScope變量myController的
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.20/angular.js"></script>
<script type="text/javascript">
function MyController() {
this.Name = "jag";
this.sal = "4500";
}
MyController.prototype.getAnnualSal = function(){
return (this.sal) * 12;
}
var app = angular.module("sample", []).run(function($rootScope) {
$rootScope.variable = 1;
});
app.controller("emp", MyController);
</script>
</head>
<body ng-app="sample">
<div ng-controller="emp as o" >
Hello {{o.Name}}, your annual salary is {{o.getAnnualSal()}}
</div>
</body>
</html>
使用run
語法,$rootScope.variable
在模塊(sample
)水平引入。
什麼是控制器這樣在MyController?
**一柔:**在我的代碼,什麼是創造'Name'和'sal'作爲成員的優勢控制器實例('o')而不是'$ scope'的成員?僅供參考..我知道控制器實例是$ scope的成員。一個引用-http://codetunnel.io/angularjs-controller-as-or-scope/ – overexchange
所以,我們不能採取類似的方法,而不在控制器中注入'$ rootScope'?否則,我確實知道你在回答 – overexchange
中寫的語法@proxchange:你在用rootScope做什麼?當我們擁有諸如服務和工廠之類的東西時,不應該使用'$ rootScope'來共享變量。但是您可以使用'.scope()。$ root'來間接獲取rootscope; –