मेरे एसपीए के राज्यों को प्रबंधित करने के लिए कोणीय यूई-राउटर का उपयोग कर रहा हूं। मैं इस मार्ग है:ब्राउज़र पर यूई-राउटर पैरामीटर को कैसे सुरक्षित रखें
.state('index.administration.security.roleEdit', {
url: '/roleEdit',
templateUrl: 'app/administration/security/role/roleEdit.html',
controller: 'roleEditCtrl',
controllerAs: 'roleEditCtrl',
params: { data: null },
resolve: {
role: function ($stateParams) {
return angular.fromJson($stateParams.data);
},
modules: function (securityService) {
return securityService.getAllModules();
}
}
})
इसके अलावा, मैं json वस्तु के रूप में 'डेटा' पैरामीटर गुजर रहा हूँ राज्य के लिए। अब जब मैं पहली बार इस राज्य को लोड करता हूं, तो सब कुछ ठीक है। लेकिन जब मैं ब्राउज़र रीफ्रेश करता हूं (F5 कुंजी) $ stateParams.data राज्य के समाधान कार्य में शून्य है।
मैं इसे कैसे हल कर सकता हूं? मुझे ये संभावित समाधान दिखाई देते हैं: 1. किसी भी तरह पैरामीटर 2. ब्राउज़र रीफ्रेश ओवरराइड करें (पता नहीं कैसे) ऐप को रीफ्रेश करने वाले ब्राउज़र को रोकने के लिए ओवरराइड करें। 3. गेटो अन्य भाई राज्य ताज़ा करने पर।
कृपया मदद
अद्यतन ठीक है, मैं डेटा इस तरह सेट करें:
vm.editRole = function(roleId){
var role = dataService.getRoleById(roleId).then(function(result){
$state.go('roleEdit', {data:angular.toJson(result)});
});
}
अद्यतन 2 roleEdit नियंत्रक इस तरह दिखता है:
(function(){
angular.module('app.administration').controller('roleEdit',
['role','modules', '$scope', 'securityService', '$state', roleEditCtrl]);
function roleEditCtrl('role', 'modules',$scope, securityService, $state){
var vm = this;
vm.roles = roles;
vm.originalRole = angular.copy(role);
vm.modules=modules;
vm.saveChanges = _saveChanges;
vm.cancel = _cancel;
return vm;
function _saveChanges(){
securityService.UpdateRole(vm.role).then(function(result){
$staste.go('^.roles');
}
}
function _cancel(){
vm.role = angular.copy(vm.originalRole);
$sscope.roleEditForm.$setPristine();
}
}
})();
क्या आपने स्थानीय भंडारण माना है? –
आप \ data \ कैसे सेट करते हैं? – maurycy
# एनीड मॉन्सौर - मैं अभी कुछ भी विचार कर रहा हूं। स्थानीय भंडारण एक विकल्प है लेकिन फिर मुझे इसे साफ़ करने के लिए एक जगह मिलनी चाहिए। – Luka