Angular JS’e JSON ile veri çekerek devam (III)

Ufak örneklerle de olsa fırsat buldukça Angular JS öğrenebilme çalışmalarına devam ediyorum.
Bugün için yapacağım örnek, Json ile veri çekme konusunda olacak. Bu örnekleri herkes için anlaşılır olabilmesi ve temel olabilmesi adına basit tutmaya çalışıyorum fakat her kod blogu gibi geliştirilmeye oldukça açık olduğu için gerisini rahatça getirebileceğinizi düşünüyorum.

Tuple diye bir nesne?

Json ile çekeceğim liste için yeni bir sınıf tanımlamayıp, Tuple nesnesi ile veri çekeceğim. Bu zamana kadar bu nesneyi duymamış veya görüpte hiç kullanmamak benim ayıbım fakat bu nesne için kısa bir bilgi vermem gerekirse, “yeni bir sınıf tanımlamadan, birden fazla değer döndürmemize yarayan kullanışlı bir nesne” diye tanımlayabilirim.
Kısa bir kullanım örneği vermek gerekirse;

Konumuza dönersek bizim kullanacağımız Json şu şekilde olacak;

Yapacağım örnekte örnek bir aile bilgileri döneceğim ve bu işlemi tuple nesnesi ile yaş, ad ve soyad bilgilerini dönerek yapacağım.

Öncelikle HttpGet özelliğini verdiğim, JsonResult olarak tanımladığım JsonAile methodumu yazıyorum;

View tarafını bildiğiniz gibi

View tarafında gelen değerlerimi ng-repeat ile döndürüp, tabloma yazacağım. Ondan öncesinde ng-app ve ng-controller larımı tanımlamayı unutmamam gerekiyor.

Burada önemli olan controllerıma verdiğim isim. AileController olarak verdiğim ismi, fonksiyonumda verileri çağırırken kullanacağım.

Verileri çağırırken de $http.get methodundan yararlanacağım.

İlk oluşturduğum JSonAile methoduna erişip, gelen datayı $scope’umun içerisindeki bireyler değerine atıp, bunu view’da belirttiğim (script’imiz de view’da aslında.) ng-repeat nesnesi ile kullanacağım.

Ve sonuç tam olarak beklediğimiz gibi. 🙂

Bir dahaki örneğimde görüşmek üzere, mutlu akşamlar !

Genel olarak web üzerine yoğunlaşan, gaza gelmek için müzik dinleyen, amatör olarak resim çekmeye çalışan, bir yandan özel bir şirkette çalışıp, diğer yandan da okumaya devam eden sıradan bir ölümlü. He bide buraların sahibi.

Leave a reply:

Your email address will not be published.