Я, кажется, возник проблемы в stringify'ing затем Пазинг из объекта URL-адресаJson stringify затем разобрать из URL
Я просто stringify моего объекта и установить место (с $ места углов главным), как так
currentUrl = {"module1" : {"is" : true} }
$location.search(JSON.stringify(currentUrl));
так что разбирает к URL просто отлично, но когда я пытаюсь захватить его из URL я получаю это назад
console.log($location.search());
---
Object {{"module1":{"is":true}}: true}
Как разобрать это обратно в объект, так что я могу использовать его? Если у меня есть
JSON.parse($location.search());
Я получаю синтаксическую ошибку. Возможно, из-за того, как поиск возвращает объект? Я немного смущен здесь, мог бы использовать некоторую помощь. Благодаря!
Так что я положил его в URL с
$location.search(JSON.stringify(currentUrl));
Какие шаги мне нужно предпринять, чтобы получить его обратно в эту форму:
{"module1" : {"is" : true} }
Edit -
он просто появляется, что он устанавливает объект json в качестве ключа в местоположении, таком как
{ "mystrigifiedobject": true }
Edit2:
основаны от первого редактирования, я был в состоянии решить эту проблему (assming это установлено в местах расположения объекта ключ) следующим образом:
currentUrl = $location.search();
currentUrl = JSON.parse(Object.keys(currentUrl));
console.log(currentUrl);
Это просто чувствует себя немного странно, хотя, я Я здесь что-то не так?
использование '$ routeParams'. –
@ DanielA.White вы могли бы привести мне пример? Я не уверен - это немного странно, но я не использую маршруты для этого, общая идея заключается в отправке сохранения объекта в URL-адресе и возможности доступа к нему - делают ли это make-файлы? – ajmajmajma
При сериализации объекта JSON для URL-адреса не забудьте запустить результат через encodeURIComponent(), например: $ location.search (encodeURIComponent (JSON.stringify (currentUrl))); – HankScorpio