В настоящее время у меня есть этот вопрос: Angular ui route stateparam in substateУгловой UI-маршрутизатор удалить косую черту? Параметр
После некоторых попыток с маршрутом Params и другими методами в URL государства как {transactionid}
и [transactionid]
я заметил, что есть/добавить до? параметра. Таким образом, URL выглядеть Liks:
website.com/page/?transactionid=someid
, но, я думаю, что это должно быть
website.com/page?transactionid=someid
В настоящее время мы удаляем слэш любой URL, используя этот код
$urlMatcherFactoryProvider.strictMode(false);
$urlRouterProvider.rule(function($injector, $location) {
var path = $location.path();
var hasTrailingSlash = path[path.length-1] === '/';
if(hasTrailingSlash) {
//if last charcter is a slash, return the same url without the slash
var newPath = path.substr(0, path.length - 1);
return newPath;
}
});
Но, как могу ли я удалить «/» перед отметкой «вопрос»?
Маршрут для «оплаты-успеха» (см вопрос в ссылке) в настоящее время выглядит следующим образом:
.state('shop.payment-success', {
url: '/payment-success{transactionid}',
templateUrl: '/views/payment-success.html',
params: {
transactionid: {
value: null,
squash: true
}
},
resolve: {
transactionid: ['$stateParams', function($stateParams){
console.log($stateParams);
return $stateParams.transactionid
}]
}
извините, но почему бы вам не использовать вместо что-то LKE: .state ('shop.payment-успех', { URL: «/ payment- success /: transactionid ', templateUrl:' /views/payment-success.html ', Титулы: { TransactionID: { значение: нулевой, сквош: истинный }} , решительность: { TransactionID: [ '$ stateParams', функция ($ stateParams) { console.log ($ stateParams); return $ stateParams.transactionid }] } –
потому что параметр? Transactionid возвращается из платежного шлюза, и я не могу его изменить – NVO