当我从一个 View 切换到另一个 View 时,我想加载一个 Controller 。
例如,我在主页中,用户想转到登录页面。我在一个文件中有一个 LoginController,它不包含在 app.js(主 AngularJS 脚本)中,我只想在用户转到登录页面时加载它。
我看到了不同的解决方案,但都非常复杂,我的 Controller 非常简单,我只想将它们放在不同的文件中,但如果我不打算使用它们,我不想加载 Controller 。
谢谢。
最佳答案
您可能需要 ng-route。这是一个完全按照您的意愿行事的模块。 (连同其他功能 -> ngRoute 。 你用下一种方式定义路线。
var app = angular.module('app ', []);
app .config(['$routeProvider',
function($routeProvider) {
$routeProvider.
when('/login', {
templateUrl: 'login.html',
controller: 'loginController'
}).
when('/home', {
templateUrl: 'home.html',
controller: 'homeController'
}).
otherwise({
redirectTo: '/home'
});
}]);
另外,您必须声明 loginController,但别担心,如果您更改它绑定(bind)的 View , Controller 会被销毁,并在您再次打开登录页面时重新创建。
关于angularjs - 更改 View 时加载 Controller 的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35339123/