如何在控制器内使用window.onload
函数。如何在角度js控制器中使用window.onload?
window.onload= function() {
console.log("Hi Page loaded")
};
该控制器不适用于整页。 我想在我的控制器至少加载后执行一个函数。
如何在控制器内使用window.onload
函数。如何在角度js控制器中使用window.onload?
window.onload= function() {
console.log("Hi Page loaded")
};
该控制器不适用于整页。 我想在我的控制器至少加载后执行一个函数。
您可以使用ng-init并使用相同的指令
var app = angular.module('DemoApp', [])
app.controller('akuaController', function($scope) {
$scope.load = function() {
alert("Window is loaded");
}
});
<!DOCTYPE html>
<html>
<head>
<script data-require="[email protected]" data-semver="1.4.7" src="https://code.angularjs.org/1.4.7/angular.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/angular-filter/0.4.7/angular-filter.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body ng-app="DemoApp" ng-controller="akuaController">
<div ng-init="load()">
</div>
</body>
</html>
更改例如,从Angular $window
控制器调用您需要的功能
angular.module('windowExample', [])
.controller('ExampleController', ['$scope', '$window', function($scope, $window) {
$scope.greeting = 'Hello, World!';
$scope.doGreeting = function(greeting) {
// This would be a starting point
$window.onload(greeting);
};
}]);
您的标记
<div ng-controller="ExampleController" ng-init="ExampleController.doGreeting()">
</div>
//inside your controller
$scope.$on('$viewContentLoaded', function() {
// write here
// either methods or variables
});
控制器是一个函数。将代码直接放入该函数中,并且在通过角度调用控制器函数时将执行代码。 –
角函数将异步执行。我想在所有其他函数完成执行后运行特定的函数。 –
你真的,真的需要澄清你的问题。首先你谈谈window.onload。然后你说“在我的控制器加载后”。然后你说“在所有其他函数完成执行之后”,而不会说这些其他函数是什么。你想在更高的层面上实现什么?你想要你的控制器做什么? –