Angularjs angular ui路由器无法创建动态命名视图
我使用多视图的角度ui路由器 我有一个常数模块:Angularjs angular ui路由器无法创建动态命名视图,angularjs,angular-ui-router,Angularjs,Angular Ui Router,我使用多视图的角度ui路由器 我有一个常数模块: angular.module('app.constants', []) .constant('constants', { parent1: "parent1", parent2: "parent2" }); 我的状态是这样的: .config(['$stateProvider', 'constants', function ($stateProvider, constants) { $stateProvider.st
angular.module('app.constants', [])
.constant('constants', {
parent1: "parent1",
parent2: "parent2"
});
我的状态是这样的:
.config(['$stateProvider', 'constants', function ($stateProvider, constants) {
$stateProvider.state(constants.parent1, {
abstract: true,
url: '/' + constants.parent1
});
$stateProvider.state(constants.parent1 + ".state1", {
url: '/state1',
views: {
'cool-view@' + constants.parent1 + 'state1': {
templateUrl: root + 'views/splashScreen/splash.html',
controller: 'splashScreenCtrl'
}
}
});
$stateProvider.state(constants.parent2, {
abstract: true,
url: '/' + constants.parent2
});
$stateProvider.state(constants.parent2 + ".state1", {
url: '/state1',
views: {
'cool-view@' + constants.parent2 + 'state1': {
templateUrl: root + 'views/splashScreen/splash.html',
controller: 'splashScreenCtrl'
}
}
});
}]);
我有很多父抽象状态。
在子状态下,我有一个要触发的命名视图。
问题是我无法动态创建行:
'cool-view@' + constants.parent1 + 'state1'
它将与以下方面合作:
'cool-view@parent1.state1'
给我一个错误。如何在视图对象内动态创建字段名。
我之所以希望能够动态创建它,是因为我有一个常量模块,将来可能会更改它,我不想在视图中硬编码它。jsidle解决这个问题,而不用考虑为什么要这样做:
正是我想要的。伟大的!
var constants = { parent2: "someThing" };
var root = "root";
var views = {};
views['cool-view@' + constants.parent2 + 'state1'] = {
templateUrl: root + 'views/splashScreen/splash.html',
controller: 'splashScreenCtrl'
};
var state = {
'url': '/state1',
'views': views
};
console.debug(state);