Turinys
Mūsų taikomose programose galiausiai turėsime didžiulį duomenų valdymą, jei naudosime turimas žinias Backbone.js Kad galėtume dirbti su kolekcijomis, matome, kad tam tikru momentu turėsime atlikti didžiulius pakeitimus ir padaryti juos modeliais po kolekcijos nėra veiksminga.Norint įveikti šias kliūtis, yra būdų ir metodų Backbone.js su kuriais galime modifikuoti ar atnaujinti ir perkelti visus kolekcijos modelius į ankstesnę būseną, tai yra labai naudingos žinios, jei turime dirbti su procesais, kurie individualiai gali paskatinti programos veikimą.
Kolekcijos atnaujinimas
Kaip jau anksčiau aiškinome, masinis pakeitimas kolekcijoje gali būti naudingas, ypač kai dirbame su labai dideliu duomenų kiekiu, kuris gali pakeisti modelį atskirai. mes veikiame programos veikimą.
Kaip padaryti šį pakeitimą?Norėdami tai padaryti „masiškai“, turime metodą .reset (), šis metodas taikomas kolekcijoms, todėl pirmiausia turime inicijuoti kolekciją, kad galėtume ją naudoti.
Šiame pavyzdyje pažiūrėkime, kaip sukursime kolekciją ir, remdamiesi ja, naudosime .reset () metodas:
var AllCollection = naujas Backbone.Collection (); TodosCollection.add ([{{id: 1, title: 'Go to Germany.', Completed: false}, {id: 2, title: 'Go to Colombia.', Completed: false}, {id: 3, title: 'Go to Japan.', Užbaigta: tiesa}]); TodosCollection.on ("pridėti", funkcija (modelis) {console.log ("Pridėta" + model.get ('title'));}); TodosCollection.on ("pašalinti", funkcija (modelis) {console.log ("Pašalinta" + model.get ('title'));}); TodosCollection.on ("keisti: baigta", funkcija (modelis) {console.log ("Pabaigta" + model.get ('title'));}); TodosCollection.set ([{{id: 1, title: 'Go to Germany.', Completed: true}, {id: 2, title: 'Go to Colombia.', Completed: false}, {id: 4, title: 'Eik į Honkongą.', Užpildyta: klaidinga}]); TodosCollection.on ("reset", function () {console.log ("Atnaujinta kolekcija");}); TodosCollection.reset ([{{title: 'Go to Canada.', Completed: false}]);
Šis pavyzdys yra labai naudingas, jei pažvelgsime, kad pradėjome naują kolekciją, pridėjome apie 3 modelius ir klausomės 3 pagrindinių įvykių: pridėti, keisti ir ištrinti, kiekvieną kartą, kai tai atsitiks, padarysime įspūdį naudodami console.log (), Baigę klausytis įvykių, sukūrėme rinkinį, jei rinkinį darome su modeliu, kurio nėra, jis tiesiog pridedamas, tačiau tai yra problema, kurios norime išvengti.
Kaip išvengti problemos?Norėdami išvengti problemos, naudosime atstatymo metodas ir norėdami patikrinti, ar jis veikia, įdėjome funkciją klausytis, ar įvyksta atstatymo įvykis, jei taip, atspausdinsime pranešimą su console.log; Galiausiai iš naujo nustatome kolekciją, tai yra, atnaujiname jos turinį ir iš karto apibrėžiame naują modelį, tai padarius, kolekcija visiškai pasikeis ir pamatysime, kad ankstesni mūsų paminėti įvykiai neturėtų būti suaktyvinti.
Kitame paveikslėlyje pažiūrėkime, kaip vykdome viską, kas aprašyta vykdant konsolės kodą Javascript apie „Google Chrome“:
Matome, kad iš naujo nustatant kolekciją, įvykiai, paskelbti modelių pašalinimo ar pridėjimo pradžioje, nėra veiksmingai suaktyvinami, nes mes atnaujiname kolekciją, tai yra, sukuriame ją tarsi iš 0.
Baigę vadovėlį, pamatėme, kad kolekcijos atnaujinimas yra labai paprasta procedūra, kurią gerai įgyvendinus galime padėti pagerinti savo programų našumą ir funkcionalumą naudodami Backbone.js.Ar jums patiko ir padėjo ši pamoka?Galite apdovanoti autorių paspausdami šį mygtuką, kad suteiktumėte jam teigiamą tašką