本文整理汇总了TypeScript中core/navigation/state.provider.StateConfigProvider.paramsToQuery方法的典型用法代码示例。如果您正苦于以下问题:TypeScript provider.StateConfigProvider.paramsToQuery方法的具体用法?TypeScript provider.StateConfigProvider.paramsToQuery怎么用?TypeScript provider.StateConfigProvider.paramsToQuery使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类core/navigation/state.provider.StateConfigProvider
的用法示例。
在下文中一共展示了provider.StateConfigProvider.paramsToQuery方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: require
]).config((applicationStateProvider: ApplicationStateProvider, stateConfigProvider: StateConfigProvider) => {
const securityGroupDetails: INestedState = {
name: 'securityGroupDetails',
url: '/securityGroupDetails/:provider/:accountId/:region/:vpcId/:name',
params: {
vpcId: {
value: null,
squash: true,
},
},
views: {
'detail@../insight': {
templateProvider: ['$templateCache', '$stateParams', 'cloudProviderRegistry',
($templateCache: ng.ITemplateCacheService,
$stateParams: StateParams,
cloudProviderRegistry: CloudProviderRegistry) => {
return $templateCache.get(cloudProviderRegistry.getValue($stateParams.provider, 'securityGroup.detailsTemplateUrl'));
}],
controllerProvider: ['$stateParams', 'cloudProviderRegistry',
($stateParams: StateParams,
cloudProviderRegistry: CloudProviderRegistry) => {
return cloudProviderRegistry.getValue($stateParams.provider, 'securityGroup.detailsController');
}],
controllerAs: 'ctrl'
}
},
resolve: {
resolvedSecurityGroup: ['$stateParams', ($stateParams: StateParams) => {
return {
name: $stateParams.name,
accountId: $stateParams.accountId,
provider: $stateParams.provider,
region: $stateParams.region,
vpcId: $stateParams.vpcId,
};
}]
},
data: {
pageTitleDetails: {
title: 'Security Group Details',
nameParam: 'name',
accountParam: 'accountId',
regionParam: 'region'
},
history: {
type: 'securityGroups',
},
}
};
const securityGroupSummary: INestedState = {
url: `/securityGroups?${stateConfigProvider.paramsToQuery(filterModelConfig)}`,
name: 'securityGroups',
views: {
'nav': {
template: '<security-group-filter app="$resolve.app"></security-group-filter>',
},
'master': {
templateUrl: require('../securityGroup/all.html'),
controller: 'AllSecurityGroupsCtrl',
controllerAs: 'ctrl'
}
},
params: stateConfigProvider.buildDynamicParams(filterModelConfig),
data: {
pageTitleSection: {
title: 'Security Groups'
}
}
};
const standaloneSecurityGroup: INestedState = {
name: 'securityGroupDetails',
url: '/securityGroupDetails/:provider/:accountId/:region/:vpcId/:name',
params: {
vpcId: {
value: null,
squash: true,
},
},
views: {
'main@': {
templateUrl: require('../presentation/standalone.view.html'),
controllerProvider: ['$stateParams', 'cloudProviderRegistry',
($stateParams: StateParams,
cloudProviderRegistry: CloudProviderRegistry) => {
return cloudProviderRegistry.getValue($stateParams.provider, 'securityGroup.detailsController');
}],
controllerAs: 'ctrl'
}
},
resolve: {
resolvedSecurityGroup: ['$stateParams', ($stateParams: StateParams) => {
return {
name: $stateParams.name,
accountId: $stateParams.accountId,
provider: $stateParams.provider,
region: $stateParams.region,
vpcId: $stateParams.vpcId,
//.........这里部分代码省略.........
示例2:
]).config((applicationStateProvider: ApplicationStateProvider, stateConfigProvider: StateConfigProvider) => {
const loadBalancerDetails: INestedState = {
name: 'loadBalancerDetails',
url: '/loadBalancerDetails/:provider/:accountId/:region/:vpcId/:name',
params: {
vpcId: {
value: null,
squash: true,
},
},
views: {
'detail@../insight': {
templateProvider: ['$templateCache', '$stateParams', 'cloudProviderRegistry',
($templateCache: ng.ITemplateCacheService,
$stateParams: StateParams,
cloudProviderRegistry: CloudProviderRegistry) => {
return $templateCache.get(cloudProviderRegistry.getValue($stateParams.provider, 'loadBalancer.detailsTemplateUrl'));
}],
controllerProvider: ['$stateParams', 'cloudProviderRegistry',
($stateParams: StateParams,
cloudProviderRegistry: CloudProviderRegistry) => {
return cloudProviderRegistry.getValue($stateParams.provider, 'loadBalancer.detailsController');
}],
controllerAs: 'ctrl'
}
},
resolve: {
loadBalancer: ['$stateParams', ($stateParams: StateParams) => {
return {
name: $stateParams.name,
accountId: $stateParams.accountId,
region: $stateParams.region,
vpcId: $stateParams.vpcId
};
}]
},
data: {
pageTitleDetails: {
title: 'Load Balancer Details',
nameParam: 'name',
accountParam: 'accountId',
regionParam: 'region'
},
history: {
type: 'loadBalancers',
},
}
};
const loadBalancers: INestedState = {
url: `/loadBalancers?${stateConfigProvider.paramsToQuery(filterModelConfig)}`,
name: 'loadBalancers',
views: {
'nav': {
template: '<load-balancer-filter app="$resolve.app"></load-balancer-filter>',
},
'master': {
component: LoadBalancers, $type: 'react'
}
},
params: stateConfigProvider.buildDynamicParams(filterModelConfig),
data: {
pageTitleSection: {
title: 'Load Balancers'
}
},
children: [],
};
applicationStateProvider.addInsightState(loadBalancers);
applicationStateProvider.addInsightDetailState(loadBalancerDetails);
});
示例3: require
(applicationStateProvider: ApplicationStateProvider, stateConfigProvider: StateConfigProvider) => {
const pipelineConfig: INestedState = {
name: 'pipelineConfig',
url: '/configure/:pipelineId?executionId&new',
views: {
pipelines: {
templateUrl: require('../pipeline/config/pipelineConfig.html'),
controller: 'PipelineConfigCtrl',
controllerAs: 'vm',
},
},
data: {
pageTitleSection: {
title: 'pipeline config',
},
},
};
// a specific stage can be deep linked by providing either refId or stageId,
// which will be resolved to stage or step by the executionDetails controller to stage/step parameters,
// replacing the URL
const executionDetails: INestedState = {
name: 'execution',
url: '/:executionId?refId&stage&subStage&step&details&stageId',
params: {
stage: {
value: '0',
},
step: {
value: '0',
},
},
data: {
pageTitleDetails: {
title: 'Execution Details',
nameParam: 'executionId',
},
},
};
const singleExecutionDetails: INestedState = {
name: 'executionDetails',
url: '/details',
views: {
pipelines: { component: SingleExecutionDetails, $type: 'react' },
},
params: {
executionParams: null,
},
abstract: true,
children: [executionDetails],
};
const executions: INestedState = {
name: 'executions',
url: `?startManualExecution&${stateConfigProvider.paramsToQuery(filterModelConfig)}`,
views: {
pipelines: { component: Executions, $type: 'react' },
},
params: stateConfigProvider.buildDynamicParams(filterModelConfig),
children: [executionDetails],
data: {
pageTitleSection: {
title: 'Pipeline Executions',
},
},
};
const pipelines: INestedState = {
name: 'pipelines',
url: '/executions',
abstract: true,
views: {
insight: {
template: '<div ui-view="pipelines" sticky-headers class="flex-fill"></div>',
},
},
children: [executions, pipelineConfig, singleExecutionDetails],
};
applicationStateProvider.addChildState(pipelines);
},
示例4: require
]).config((applicationStateProvider: ApplicationStateProvider, stateConfigProvider: StateConfigProvider) => {
const clusters: INestedState = {
name: 'clusters',
url: `/clusters?${stateConfigProvider.paramsToQuery(filterModelConfig)}`,
views: {
'nav': {
template: '<cluster-filter app="$resolve.app"></cluster-filter>',
},
'master': {
templateUrl: require('../cluster/allClusters.html'),
controller: 'AllClustersCtrl',
controllerAs: 'ctrl'
}
},
redirectTo: (transition) => {
return transition.injector().getAsync('app').then((app: Application) => {
if (app.serverGroups.disabled) {
const relativeSref = app.dataSources.find(ds => ds.sref && !ds.disabled).sref;
const params = transition.params();
// Target the state relative to the `clusters` state
const options = { relative: transition.to().name };
// Up two state levels first
return transition.router.stateService.target('^.^' + relativeSref, params, options);
}
return null;
});
},
params: stateConfigProvider.buildDynamicParams(filterModelConfig),
data: {
pageTitleSection: {
title: 'Clusters'
}
},
children: [],
};
const serverGroupDetails: INestedState = {
name: 'serverGroup',
url: '/serverGroupDetails/:provider/:accountId/:region/:serverGroup',
views: {
'detail@../insight': {
templateProvider: ['$templateCache', '$stateParams', 'cloudProviderRegistry',
($templateCache: ng.ITemplateCacheService,
$stateParams: StateParams,
cloudProviderRegistry: CloudProviderRegistry) => {
return $templateCache.get(cloudProviderRegistry.getValue($stateParams.provider, 'serverGroup.detailsTemplateUrl'));
}],
controllerProvider: ['$stateParams', 'cloudProviderRegistry',
($stateParams: StateParams,
cloudProviderRegistry: CloudProviderRegistry) => {
return cloudProviderRegistry.getValue($stateParams.provider, 'serverGroup.detailsController');
}],
controllerAs: 'ctrl'
}
},
resolve: {
serverGroup: ['$stateParams', ($stateParams: StateParams) => {
return {
name: $stateParams.serverGroup,
accountId: $stateParams.accountId,
region: $stateParams.region,
};
}]
},
data: {
pageTitleDetails: {
title: 'Server Group Details',
nameParam: 'serverGroup',
accountParam: 'accountId',
regionParam: 'region'
},
history: {
type: 'serverGroups',
},
}
};
const multipleServerGroups: INestedState = {
name: 'multipleServerGroups',
url: '/multipleServerGroups',
views: {
'detail@../insight': {
templateUrl: require('../serverGroup/details/multipleServerGroups.view.html'),
controller: 'MultipleServerGroupsCtrl',
controllerAs: 'vm'
}
},
data: {
pageTitleDetails: {
title: 'Multiple Server Groups',
},
}
};
applicationStateProvider.addInsightState(clusters);
applicationStateProvider.addInsightDetailState(serverGroupDetails);
applicationStateProvider.addInsightDetailState(multipleServerGroups);
stateConfigProvider.addRewriteRule('/applications/{application}', '/applications/{application}/clusters');
});