Javascript 在Angular JS中,控制器创建的作用域对象方法是什么?
“controller as”语法是什么?它与创建控制器的$scope对象方法有何不同 我已经经历过了Javascript 在Angular JS中,控制器创建的作用域对象方法是什么?,javascript,angularjs,Javascript,Angularjs,“controller as”语法是什么?它与创建控制器的$scope对象方法有何不同 我已经经历过了 我想您想知道“this”和“$scope”方法之间的区别。我建议您浏览以下主题: 此外,AngularJS在探索这些和其他概念时也有一个(尽管有自己的见解)。最后,我找到了我想要的确切答案 在AngularJS 1.2中,引入了“控制器为”语法,使控制器代码创建更具可读性 通常,我们使用$scope对象创建控制器,如下清单所示: myApp.controller("AddController
我想您想知道“this”和“$scope”方法之间的区别。我建议您浏览以下主题:
此外,AngularJS在探索这些和其他概念时也有一个(尽管有自己的见解)。最后,我找到了我想要的确切答案 在AngularJS 1.2中,引入了“控制器为”语法,使控制器代码创建更具可读性 通常,我们使用$scope对象创建控制器,如下清单所示:
myApp.controller("AddController", function ($scope) {
$scope.numb1;
$scope.numb2;
$scope.result;
$scope.add = function () {
$scope.result = $scope.numb1 + $scope.numb2;
}
});
<div ng-controller="AddVMController as vm">
<input ng-model="vm.number1" type="number" />
<input ng-model="vm.number2" type="number" />
<button class="btn btn-default" ng-click="vm.add()">Add</button>
<h3>{{vm.result}}</h3>
</div>
在上面,我们使用$scope对象控制器和视图创建了一个AddController,其中包含三个变量和一个行为,它们相互通信。$scope对象用于向视图传递数据和行为。它将视图和控制器粘在一起
基本上,$scope对象执行以下任务:
myApp.controller("AddVMController", function () {
var vm = this;
vm.number1 = undefined;
vm.number2=undefined;
vm.result =undefined;
vm.add = function () {
vm.result = vm.number1 + vm.number2;
}
}))myApp.controller("AddController", function ($scope) {
$scope.numb1;
$scope.numb2;
$scope.result;
$scope.add = function () {
$scope.result = $scope.numb1 + $scope.numb2;
}
});
<div ng-controller="AddVMController as vm">
<input ng-model="vm.number1" type="number" />
<input ng-model="vm.number2" type="number" />
<button class="btn btn-default" ng-click="vm.add()">Add</button>
<h3>{{vm.result}}</h3>
</div>
添加
{{vm.result}
以下是将控制器用作语法的一些步骤:
最后,我想说,无论是将控制器用作语法还是$scope对象,完全由您自己选择。这两种方法都没有很大的优点或缺点,只是考虑到视图中嵌套的控制器之间的明显分离,您可以控制上下文中的控制器作为语法使用起来更容易一些 不清楚你在问什么。也读一下这个@Chrillewoodz:现在更清楚了吗?请复习问题和答案。请看另一个答案。我问的是“controller as”语法,以及它与$scope对象方法的区别。