在角度ui-router tutorial中,所有状态都在同一个js文件中定义。
myApp.config(function($stateProvider) {
// An array of state definitions
var states = [
{ name: 'hello', url: '/hello', component: 'hello' },
{ name: 'about', url: '/about', component: 'about' },
{
name: 'people',
url: '/people',
component: 'people',
resolve: {
people: function(PeopleService) {
return PeopleService.getAllPeople();
}
}
},
{
name: 'people.person',
url: '/{personId}',
component: 'person',
resolve: {
person: function(people, $stateParams) {
return people.find(function(person) {
return person.id === $stateParams.personId;
});
}
}
}
]
// Loop over the state definitions and register them
states.forEach(function(state) {
$stateProvider.state(state);
});
});
但是,在创建大型应用程序时,我们可能会有很多状态。通常,状态调用一个调用模板的组件,并可能使用服务等等。
因此,我用来在单独的js文件中定义状态,就像我对组件,模板,服务一样......
所以我可能有例如:
这是一个好习惯吗?或者最好在同一个文件中定义所有状态?
答案 0 :(得分:1)
将它们拆分为单独的文件更具可读性,可理解性和组织性。大概你有一个很好的目录结构,因此主要区域会有自己的目录和子目录等。状态的配置文件可以进入它们以遵循相同的层次结构。
这是我自己从几个中型到大型项目的经验,其中结构对易用性非常重要。