Actualizare automată URL-adânc legate atunci când modificări aduse modelului în Angular

voturi
8

Asa de. Am fost în jur de joc în AngularJS (care continuă să mă uimească în fiecare minut eu lucrez cu el) și mă întrebam, atunci când se utilizează $ routeProvider și $ routeParams, există vreo modalitate de a forța curent URL / locatie / deep-link-ul bara de locație în browser pentru a actualiza în mod automat atunci când anumite modele schimba pe pagina?

Aici este app că eu sunt în jur de joc cu. Ei aplicația din tutorial pe site - ul unghiular, cu excepția am înșurubată în jurul cu ea și se adaugă în unele caracteristici , cum ar fi paginare. Dacă observați, la accesând acest link care sunteți redirecționat #/phones//age/5/0. Primul segment este controller, în timp ce ultimele 4 descriu filtre, respectiv, o interogare de text, coloana „“ pentru a sorta după, numărul de articole pe pagină și numărul paginii.

Controlerul pentru acest lucru ia în aceste prin $ routeParams și actualizează modelele / punctele de vedere , cum ar fi normal , dar cum pot forța URL - ul pentru a schimba în mod automat atunci când utilizatorul schimbă modelele / punctele de vedere? Deci , dacă ar fi să tastați xoomîn caseta de interogare pe pagina de la prima vizită, URL - ul din bara de locație ar schimba http://brandonep.org/angular-test-phonecat/#/phones/xoom/age/5/0imediat ce îl introduceți.

Mulțumesc anticipat! Și îmi pare rău dacă sunt neclare, dar am încercat meu cel mai bun: P

Întrebat 08/07/2012 la 09:28
sursa de către utilizator
În alte limbi...                            


1 răspunsuri

voturi
4

Mi - ar folosi parametrii pe adresa URL ( /?a=1&b=2), și apoi injectați $routeParamsîn controlerul să interpreteze parametrii pe controler de sarcină.

Apoi , puteți utiliza $watchpentru a viziona modelul, și de fiecare dată când se schimbă set window.location.url. Iată un exemplu: http://jsfiddle.net/andytjoslin/eYJmR/

Publicat 09/07/2012 la 00:31
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more