我们正在开发一个使用angular JS的单页应用程序,我正在使用状态提供程序来配置路由。基本上有一个全球导航视图和仪表板视图。我必须从导航中传递几个参数来进行服务调用,然后相应地显示仪表板。我已将状态分为两个,一个用于导航,另一个用于仪表板。我无法弄清楚的是,我应该在哪里调用ajax来获取仪表板数据。我应该在导航本身,并通过解决它。或者我应该只是将数据传递给仪表板控制器并从那里进行ajax调用。以下是我的状态角度ui-router-ajax调用负载
$stateProvider
.state('home', {
url: '/',
templateUrl: 'templates/home.htm',
controller: 'homeController',
})
.state('dashboard', {
url: 'contact',
templateUrl: 'templates/dashboard.htm',
controller: 'dashboardController'
})
.state('state3', {
url: '/articles',
templateUrl: 'templates/state3.htm',
controller: 'state3Controller'
});
$urlRouterProvider.otherwise('/home');
我认为它会最好通过URL传递prams,并使用'resolve' @ state dashboard来调用你需要的API。 –