Sab*_*kar 10 javascript javascript-framework angularjs
我们可以使用脚本标记内的范围中定义的角度变量,如下所示.
HTML代码:
<div ng-controller="AngularCtrl">
<script>
alert($scope.user_name);
</script>
</div>
Run Code Online (Sandbox Code Playgroud)
JS代码:
function AngularCtrl($scope){
$scope.user_name = 'John';
}
Run Code Online (Sandbox Code Playgroud)
我只是得到'$ scope not defined'.有人可以帮我解决我在这里做错了什么吗?
Sup*_*upr 15
不,你不能.$scope仅在 Angular中定义,即在您的AngularCtrl-function中定义.有一些方法可以从外部访问角度范围,但这通常是不好的做法,并且表明您没有正确使用Angular.
一个更有棱角的方法来做你正在尝试的是使警报成为控制器逻辑的一部分:
function AngularCtrl($scope) {
$scope.user_name = 'John';
$scope.sayHi = function(){
alert('Hi ' + $scope.user_name);
}
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用各种角度技术(在此演示)来调用该sayHi()函数.一些例子:
<div ng-click="sayHi()">Demo clickable - Please click me</div>
Run Code Online (Sandbox Code Playgroud)
<div ng-init="sayHi()">Demo ng-init</div>
Run Code Online (Sandbox Code Playgroud)
function AngularCtrl($scope) {
$scope.user_name = 'John';
$scope.sayHi = function(){
alert('Hi ' + $scope.user_name);
}
// Call it
$scope.sayHi();
}
Run Code Online (Sandbox Code Playgroud)
希望这些例子具有启发性,但你真正应该做的事情取决于你真正想要实现的目标.
| 归档时间: |
|
| 查看次数: |
13675 次 |
| 最近记录: |