SPA with AngularJS: курсови проекти
Колеги, готови сме с условията на курсовите проекти за курса "SPA with AngularJS":
Както знаете, този курс ще се завършва с практически проект, който всеки си прави вкъщи. Ще има защита на живо и по Skype за онлайн курсистите.
Какво представлява AngularJS Ads проектът?
- Дадено вие как изглеждат екраните от система за онлайн обяви (UI prototype)
- Дадена е REST услуга, която пази данните и имплементира всички необходини действия
- Посетителите на сайта без регистрация могат да разглеждат обявите, да се регистрират и логват
- Логнатите потребители могат да си редактират обявите
- Администраторът (поребител с по-високи права) може да редактира обяви, потребители, категории и градове - тази част е бонус, защото е по-трудна и по-оебмна за имплементация
За да ви помогнем по изграждането на практическия курсов проект добавяме още учебни занятия към курса:
- 5 януари от 12 до 20 часа - колегата Владо ще пише проекта на живо пред всички, от нулата стъпка по стъпка. Ще запишем видео за онлайн курсистите. Няма да ви дадем сорс кода, за да си го напишете сами. Това е важно условие в заданието.
- 6 януари - от 16 до 22 часа - ще правим Lab, отново работа по практическия проект.
- 11 януари (неделя) - защита на проектите - ще направим записване и разпределение по часове.
В понеделник и вторник остават планираните учебни занятия:
- Services, ruting, directives
- Работа по практическия проект
Обръщам внимание че има важно изискане да работите с Git и да commit-вате редовно в GitHub. Ако не го правите, ще загубите половината от точките за проекта. Трябва да покажете, че сте работили здраво по този проект и не сте го преписали от ваш колега.
Проектите са индивидуални. Няма да има разпределение на отбори.
Ще запиша и видео разяснения по проекта до няколко дни.
Започвайте работа! Имате право да обсъждате публично и да споделяте кой до къде е стигнал.
За REST услугите админската парола е admin / admin.
Препоръчам ви да си пуснете услугите локално (показано е във видеото как става с [Ctrl+F5] във Visual Studio).
Аз успях да си взема обявите за всяка страница. Използвах $resource, на който за params обект подавам обект съдържащ параметрите за адс заявката (?CategoryId={CategoryId}&TownId={TownId}&StartPage={StartPage}&PageSize={PageSize}). Pagesize ми е константа в апа, startpage го взимам от клик върху бутон от pagination-а. Като направиш заявка с някакъв pageSize автоматично ти връща колко са numPages и може да го използваш за чертане на pagination-a
Може да погледнеш в гитхъба ми или ако не разбираш как точно го обясних ми пиши в скайп
По принцип трябва да направиш server-side paging, т.е. следното:
Ето тук има примерче, което може да адаптираш за нашия сценарий: https://github.com/michaelbromley/angularUtils/tree/master/src/directives/pagination#working-with-asynchronous-data
Не е нужно да буташ никакви други параметри към REST услугата, освен ?startpage=page
Да, аз ползвам точно тази библиотека, ама като не съм си прочел цялата документация да видя, че има солюшън и за нашия сцернарий... Pagination-a заспа