med nul med angularjs,,,,, 143,,,,,,,,, 17,,,,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, nul er en god teknologi, som gør det muligt for os at skabe net apps uden nogen server-side programmering, så udviklingen bliver hurtigere og lettere.i denne artikel, vil jeg vise dig, hvordan man bruger det sammen med angularjs for at opnå den bedste entreprenør og brugernes erfaringer er muligt.,, hvad er der så godt ved nul med angularjs?hvis de ser på, hvordan både af de teknologier, der er din svar.tovejs data angularjs fungerer særdeles godt med bindende fra nul er ikke bare redde data.sync. "filosofi.,, udviklingen går hurtigt, og brugeren erfaring er de bare skriv noget, og det er allerede reddet og til rådighed for andre forbundne brugere.,,, trin 1: oprettelsen af databasen, lad os starte med at oprette en database.hvis du ikke har en konto, skabe en (du kan skrive med github!)så logge på og skabe en app ved at udfylde form og trykke på knappen.,,, fordi vi vil anvende en facebook - login videre, må du give din facebook - app 's oplysninger (dvs. app - app hemmelige) i databasen er valgmuligheder.klik på "forvalte" knap under dit nul app navn og gå til "simpel login" regning, så ind i de ønskede oplysninger og kontrol "gjort", vil du også nødt til at få din facebook - app - - for at få det til at fungere.hele processen er ret hurtigt og er beskrevet i nul websted.,,, trin 2: oprettelse af en vinkel - app, lad os starte med at skabe et grundlag html og javascript for vores app.We will be creating a simple chat application that will allow users to log in using Facebook.,,Create an HTML file and put this markup inside:,,<html> <head> \t<script src="https://cdn.firebase.com/js/client/2.0.4/firebase.js"></script> <script src="https://code.angularjs.org/1.3.8/angular.js"></script> <script src="https://cdn.firebase.com/libs/angularfire/0.9.0/angularfire.min.js"></script> <script src="angular.app.js"></script> </head> <body ng-app="simpleChat"> \t<div ng-controller="MessagesCtrl"> \t\t\t<button ng-click="login()" ng-hide="authData">Log In</button> \t\t\t<input ng-model="newMessage.text "ng keyup =" handlekeyup ($begivenhed) "> < div ng gentager =" besked i data. meddelelser "> < b > {{message.author}}: < /b > {{message.text}} < /div > < /div > < /organ > < /html >,, som du kan se, det indeholder nogle manuskripter, som vi har brug for.det omfatter , firebase.js og vinkel. js,, og vi har også brug for, firebase-simple-login.js for facebook godkendelse., angularfire.min.js, indeholder angularfire modul, som i høj grad forenkler arbejder med nul. og nu skabe, angular.app.js, dokument, som vi vil sætte vores ansøgning logik.lad os begynde med at erklære de vigtigste modul, simplechat:,, var app = vinkel. - modul ('simplechat, ['firebase ']), som du kan se, er den eneste afhængighed er, nul, modul fra angularfire.,,, trin 3: simpelt login, lad os skabe kode, der gør det muligt for brugere til at logge ind med facebook.siden vores app er så lille, at vi kun vil have en registeransvarlig, der: , messagesctrl,.,, app. controller ('messagesctrl "[" $anvendelsesområde "," $nul "funktion ($anvendelsesområde, $(nul), - - nul, funktion, vil give os mulighed for at forbinde til - nul - databasen, og $firebasesimplelogin, vil forvalte login ting.,, har vi brug for et, nul, instans, så lad os skabe det:,, var ref = nye nul (https: //////////////tutssampleapp. firebaseio. kom /"), selvfølgelig erstatte,'your-unique-url. databasen er url.nu forberede login objekt ved hjælp af $firebasesimplelogin, og den dommer, vi har lige skabt:,, $scope.login = function() {ref.authwithoauthpopup ("facebook" funktion (fejl, authdata) {})), og det er temmelig meget, for at få login status.If the user is logged in, the ,$scope.loginObj.user, variable will contain an object with the user's data; otherwise, it will be ,null,.,,Now add a ,<div>, with our controller and a button to let the user sign in to the body of your page:,,<div ng-controller="MessagesCtrl"> \t<button ng-click="login()" ng-hide="authData">Log In</button> \t<input ng-model="newMessage.text" ng-keyup="handleKeyup($event)"> \t<div ng-repeat="message in data.messages"> <b>{{ message.author }}:</b> {{ message.text }} </div> </div>,,We used the ,ngHide, directive to hide the button when the user is logged in. nu, $anvendelsesområde. login(), metode vil kalde en metode med samme navn på $anvendelsesområde. loginobj:,, $scope.login = function() {ref.authwithoauthpopup ("facebook" funktion (fejl, authdata) {})}, den eneste parameter, der anvendes, er navnet på leverandøren plejede at logge ud af.du kan teste din app, og login skal forsvinde når du logger ind.,,, trin 4: visning af meddelelser, som man kan forvente, vil det også være ret nemt.lad os forberede html.vi vil bruge, ngrepeat, loop gennem alle meddelelser og vise dem:,, < div ng gentager = "besked i data. meddelelser" > < b > {{message.author}}: < /b > {{message.text}} < ///////div >,, nu er vi nødt til at ajourføre den registeransvarlige.skabe, mål, variable, som vil holde målet er vendt tilbage fra nul:,, var mål = $nul (ref. $asobject();,,, $asobject(), metode omdanner hele henvisning til en javascript genstand med en række nyttige metoder.det, vi vil bruge kaldes,. $bindto(), og vil give os mulighed for at skabe en trekant bindende (nul angularjs dom):,, mål. $bindto ($anvendelsesområde, "data"), sætter vi $anvendelsesområde, da den første parameter, og en ejendom er navn som den anden.den genstand, vi er bindende, vil fremgå af $anvendelsesområde, under dette navn (som $scope.data i dette eksempel).,,, og det er, hvad du har brug for at vise de beskeder!selvfølgelig, hvis du ikke har lagt noget i den, beskeder, array i databasen, vil du ikke se noget , hvis du løber din app.,,, løntrin 5: at sende beskeder, vil dette blive en endnu hurtigere.lad os tilføje et input til vores registeransvarliges, div., så vores brugere kan type i meddelelser:,, < input ng model = "newmessage. tekst" ng keyup = "handlekeyup ($begivenhed)" >,, input er værdi vil blive bundet til $scope.newmessage.text variable, og dets, keyup, begivenhed vil fyre, $anvendelsesområde. handlekeyup(), callback.bemærk, at vi vedtog, $begivenhed, som den parameter, da vi er nødt til at tjekke, om brugeren presset ind.,, lad os definere, $anvendelsesområde. handlekeyup(), funktion:,, $scope.handlekeyup = funktion handlekeyup (e) (, først tjekker vi, hvis træde nøgle var presset. hvis (e.keycode = = 13) {, hvis vi tilføjer brugerens display navn til $scope.newmessage, genstand, ajourføre, $scope.data.messages, system, og sætte $scope.newmessage, formål, $scope.newmessage.author = ref. getauth(). facebook.displayname; ref.child ("meddelelser"). tryk ($anvendelsesområde. newmessage); $scope.newmessage = {}, du også er nødt til at nulstille, $scope.newmessage, formål, $scope.newmessage = {},,, det er det - ppen din app i to browsere (, så du kan bruge to facebook regnskaber) og prøve det oris!som sædvanlig, læg nogle spørgsmål, bemærkninger, og general feedback i form nedenfor.