2016-11-28 80 views
0

controllerA甲如何使用參數而不顯示在URL中?從狀態

$state.go('account.accountRegister', {accountType: $stateParams.accountType, acName: acName}) 

狀態app.js定義從狀態B

.state('account.accountRegister', { 
    url: '/:accountType/register', 
    params: {accountType, acName}, 
    views: { 
     '[email protected]':{ 
     templateUrl: 'app/views/registration.html', 
     controller: 'registrationController' 
    } 
} 
}) 

controllerB

console.log($stateParams.acName); // is getting undefined 

如何噸使用acName他控制器沒有顯示在狀態的url部分?

+0

嘗試givinng默認值狀態PARAMS。 'params:{accountType:null,acName:null}' –

+0

如果我提到'null'我放棄它的價值。 –

回答

0

我想出了一個解決方案

 .state('account.accountRegister', { 
       url: '/:accountType/register', 
       params: { 
        acName: { 
         value: 'defaultValue', 
         squash: false 
        } 
       }, 
       views: { 
        '[email protected]':{ 
         templateUrl: 'app/views/registration.html', 
         controller: 'registrationController' 
        } 
       } 

     }) 

欲瞭解更多信息的params對象的squash屬性:

https://ui-router.github.io/docs/0.3.1/#/api/ui.router.state $ stateProvider

相關問題