gpt4 book ai didi

javascript - AngularJS - 如何在路由 `when` Controller 中加载 JS 文件?

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

我有一个使用 AngularJS 的网络应用程序,但每个 View 都有不同的 JS 文件。如何在路径 when Controller 中加载 JS 文件?

var app = angular.module("myApp", ['ngRoute']);
app.config(['$routeProvider',
function ($routeProvider) {
$routeProvider.
when('/member/master', {
templateUrl: 'templates/two-grid.html',
controller: 'memberMaster'
}).
when('/core/master', {
templateUrl: 'templates/two-grid.html',
controller: 'coreMaster'
}).
when('/user/master', {
templateUrl: 'templates/two-grid.html',
controller: 'userMaster'
}).
otherwise({
redirectTo: '/dashbourd'
});
}]);

app.controller('coreMaster', function ($scope) {
//I want to load js/coremaster.js here
});
app.controller('memberMaster', function ($scope) {
//I want to load js/membermaster.js here
});
app.controller('userMaster', function ($scope) {
//I want to load js/usermaster.js here
});

最佳答案

我认为 $stateProvider 和 ocLazyLoad可以帮助你。

看一个例子:

$stateProvider
.state('login',{
templateUrl:'views/pages/login.html',
controller: 'LoginCtrl',
controllerAs: 'vm',
url:'/login',
resolve: {
loadMyDirectives:function($ocLazyLoad){
return $ocLazyLoad.load(
{
name:'aExample',
files:[
'scripts/controllers/login.js',
]
});
}
}
})

您还可以在此处查看其他示例:https://github.com/ocombe/ocLazyLoad/blob/master/examples/complexExample/js/app.js

关于javascript - AngularJS - 如何在路由 `when` Controller 中加载 JS 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34479011/

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