Объединить два состояния, которые делают то же самое, но разные параметры в AngularJS? - PullRequest
0 голосов
/ 05 октября 2018

В настоящее время у меня есть два отдельных состояния, которые по сути делают одно и то же, но имеют разные параметры. Как мне их объединить?

.state('mdb.standards', {
        url: '/standards?:page?create',
        params: {
            page: null,
            create: null
        },
        controller: 'FdxMdbContainerController',
        controllerAs: 'vm',
        templateUrl: 'fdx/modules/mdb/mdb.features/browser/fdx-mdb-list-home.tpl.html',
        access: {
            hasAccess: ['fdxHasAccess', '$stateParams',
                function (fdxHasAccess, $stateParams) {
                    return fdxHasAccess.mdb.toStandards(true, false, $stateParams.companyId);
            }]
        },
        resolve: {
            configResource: ['fdxMdbConfigService',
                function (fdxMdbConfigService) {
                    return fdxMdbConfigService.containerConfig('STANDARD');
            }]
        },
        data: {
            pageTitle: 'nav.standards'
        }
    })

.state('mdb.studies', {
        url: '/studies?:page?create',
        params: {
            page: null,
            create: null
        },
        controller: 'FdxMdbContainerController',
        controllerAs: 'vm',
        templateUrl: 'fdx/modules/mdb/mdb.features/browser/fdx-mdb-list-home.tpl.html',
        access:{
            hasAccess: ['fdxHasAccess', '$stateParams',
                function (fdxHasAccess, $stateParams) {
                    return fdxHasAccess.mdb.toStudies(true, false, $stateParams.companyId);
            }]
        },
        resolve:  {
            configResource: ['fdxMdbConfigService',
                function (fdxMdbConfigService) {
                    return fdxMdbConfigService.containerConfig('STUDY');
            }]
        },
        data: {
            pageTitle: 'nav.studies'
        }
    })

Это то, с чем я работаю до сих пор, Что я хочу сделать, это объединить их вместе, но используя URL или параметры, чтобы использовать меньше строк кода, я столкнулся со стеной, но код, который я искал, был в настоящее время ...

    .state('mdb.standardsStudies', {
        url: '/:container?:page?create',
        params: {
            page: null,
            create: null
        },
        controller: 'FdxMdbContainerController',
        templateUrl: 'fdx/modules/mdb/mdb.features/browser/fdx-mdb-list-home.tpl.html',
    })

Я понимаю, что во втором блоке много чего не хватает, но что я собираюсь здесь делать?

...