我想在定义之前使用函数。因为有些时候会有很多初始化变量,所以我想看看我的代码非常安排,但是如果我们在定义之后调用函数,我的代码看起来不太好,我知道它在C / C ++中是不可能的。但是如果在angularjs中有可能会有一些方法,请告诉我们。
请参阅一些java脚本代码
<body>
<div ng-app="myApp" ng-controller="myCtrl">
First Name: <input type="text" ng-model="firstName"><br>
Last Name: <input type="text" ng-model="lastName"><br>
<br>
Full Name: {{firstName + " " + lastName}}
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.printName();// No working
$scope.printName=function(){
$scope.firstName = "John";
$scope.lastName = "Doe";
}
//$scope.printName();// working
});
</script>
</body>
以下代码正在运行,但我的要求如上所述,我定义了类似$scope.printName=function(){}
的函数,因为此函数在视图中用作ng-click。
printName();// working
function printName(){
$scope.firstName = "John";
$scope.lastName = "Doe";
}
请参阅演示Pluker
答案 0 :(得分:3)
唯一的方法是使用一个挂起的命名函数定义:
printName();
$scope.printName = printName;
function printName() {
$scope.firstName = ...
}
这值得吗?可能不是。
如果您不需要在范围上公开该函数(即,如果不需要$scope.printName = printName
),则可能值得考虑。但在那种情况下,你有没有再打电话给这个功能?如果没有,那么根本不要使用功能。
另外,除此之外,“printName
”对于此功能来说是用词不当。如果有的话是“setDefaultName
”。