I den forrige opplæringen implementerte vi påloggingsfunksjonaliteten og så også hvordan du bruker AngularJS-tjenester for å dele data mellom kontroller. I denne delen av opplæringsserien lager vi et grensesnitt for den innloggede brukeren for å lage et blogginnlegg.
La oss begynne med å klone den tredje delen av opplæringen fra GitHub.
git klon https://github.com/jay3dec/AngularJS_Firebase_Part3.git
Etter kloning av kildekoden, naviger til prosjektkatalogen og installer de nødvendige avhengighetene.
cd AngularJS_Firebase_Part3 npm installere
Når avhengighetene er installert, start serveren.
npm start
Pek nettleseren din til http: // localhost: 8000 / app / # / home, og du bør ha programmet kjørt.
Vi trenger en side som brukeren kan opprette og publisere blogginnlegg. La oss legge til krever maler og filer for å opprette siden Legg til innlegg.
Naviger til AngularJS_Firebase_Part3 / app
katalog og opprett en mappe som heter addPost
. Innsiden addPost
opprett en HTML-fil kalt addPost.html
og addPost.js
. I addPost.html
legg til følgende HTML-kode:
AngularJS & Firebase Blog App
Innsiden addPost.js
, Vi definerer ruter for Legg til innlegg-visningen. $ routeProvider
har en metode kalt når
, som vi skal bruke til å lage en rute for våre addPost
utsikt. Vi setter en templateUrl
som ville bli gjengitt i index.html
. Vi stiller også en kontrolleren
(logikk som styrer en visning) for den nyopprettede $ omfang
av addPost
utsikt. Dette er hvordan addPost.js
endelig ser ut:
'bruk streng'; angular.module ('myApp.addPost', ['ngRoute']) .config (['$ routeProvider', funksjon ($ routeProvider) $ routeProvider.when ('/ addPost', templateUrl: 'addPost / addPost.html ', kontroller:' AddPostCtrl ');] .controller (' AddPostCtrl ', [' $ scope ', funksjon ($ scope) ]);
Inkluder myApp.addPost
modul i app.js
.
angular.module ('myApp', ['ngRoute', 'myApp.home', 'myApp.register', 'myApp.welcome', 'myApp.addPost' // Nytilkoblet modul])
Legg også til en referanse til addPost.js
i app / index.html
side.
Lagre endringene, start serveren på nytt og pek nettleseren din til http: // localhost: 8000 / app / # / addPost, og du bør kunne se siden for legge til innlegg.
Først må vi legge til et ngModel-direktiv i tekstboksen og tekstområdet på siden Legg til for å aktivere toveis data bindende
.
Når en bruker publiserer et blogginnlegg, bør det ha en tittel og et innlegg. Så vi legger til validering for å sjekke om et blogginnlegg har tittel og innlegg. Hvis tittelen og innlegget er oppgitt, aktiverer vi publiserings-knappen, og brukeren kan publisere hans eller hennes blogginnlegg. Vi bruker et ngDisabled-direktiv for å deaktivere publiseringsknappen. Legg til ngDisabled
Direktiv til publiseringsknappen som vist.
Som vist i koden ovenfor, ngDisabled
ville deaktivere publiseringsknappen når tittelen eller innlegget i artikkelen ikke er oppgitt.
Deretter lagrer vi tittelen og innlegget til artikkelen til Fire
når brukeren klikker publiseringsknappen. For å lagre dataene i Firebase, bruker vi $ push-API.
Legg til ngController
direktiv til kroppen av addPost.html
og legg også til ngSubmit-direktivet til skjemaet i addPost.html
.