列出 angularjs controller 中的所有函数
List all the functions inside angularjs controller
我有一个 angularjs 控制器,我在里面定义了 method1 和 method2。
现在我需要一种方法来获取 angular 控制器中已定义方法的信息。
我尝试使用 $scope 变量它让我可以访问这些函数,但我在这里需要的是将所有方法定义为列表(或类似的东西)。
当我说 $scope.getAllMethods
时,它应该给我控制器内部定义的 method1
和 method2
的信息。
this怎么样?
- 获取 $scope 的所有属性。
- 测试是否为函数类型。
如果是,推送到一个数组并将它们字符串化。
$scope.methods = [];
$scope.getAllMethods = function() {
console.log($scope);
var props = Object.getOwnPropertyNames($scope);
for (var i = 0; i < props.length; i++) {
if (typeof($scope[props[i]]) === 'function') {
$scope.methods.push({
'name': props[i],
'function': $scope[props[i]].toString()
})
}
}
}
我有一个 angularjs 控制器,我在里面定义了 method1 和 method2。
现在我需要一种方法来获取 angular 控制器中已定义方法的信息。
我尝试使用 $scope 变量它让我可以访问这些函数,但我在这里需要的是将所有方法定义为列表(或类似的东西)。
当我说 $scope.getAllMethods
时,它应该给我控制器内部定义的 method1
和 method2
的信息。
this怎么样?
- 获取 $scope 的所有属性。
- 测试是否为函数类型。
如果是,推送到一个数组并将它们字符串化。
$scope.methods = []; $scope.getAllMethods = function() { console.log($scope); var props = Object.getOwnPropertyNames($scope); for (var i = 0; i < props.length; i++) { if (typeof($scope[props[i]]) === 'function') { $scope.methods.push({ 'name': props[i], 'function': $scope[props[i]].toString() }) } }
}