gpt4 book ai didi

javascript - 每次路由 View 时都会执行 AngularJS Controller

转载 作者:行者123 更新时间:2023-11-30 12:35:07 25 4
gpt4 key购买 nike

每次我通过如下链接更改路径

<li><a href="#/home">Home</a></li>

路由器定义中 View 的 Controller 再次运行。

config(['$routeProvider', '$locationProvider',
function($routeProvider, $locationProvider) {
// $locationProvider.hashPrefix('!');

$routeProvider.when('/home', {
templateUrl: 'partials/home.html',
controller: 'mainCtrl'
});
$routeProvider.when('/test', {
templateUrl: 'partials/test.html',
controller: 'testCtrl'
});
$routeProvider.otherwise({
redirectTo: '/home'
});
}
]);

我不认为这是默认行为(我在文档中没有提到它),但是我看不出问题是什么。

附言

我没有为我的模板中的任何 DOM 元素分配 ng-controller,因为我看到其他人有类似的问题,而这就是问题所在。

最佳答案

这是默认行为。
基本上, Controller 是用于论证 Angular Scope 的函数。因此每次打开与 Controller 关联的页面时都需要调用它。每次导航您的页面时, Angular 都会创建新的范围。

关于javascript - 每次路由 View 时都会执行 AngularJS Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26298766/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com