AbstractView

[[TOC]]

AbstractView

Uygulama arayüzlerinde geliştirme yaparken bu sınıf kullanılmaz. Eğer yeni bir BaseView eklemek isterseniz bu sınıftan türetmelisiniz. Bunun dışında uygulama ekranları için doğrudan bu AbstractView’dan katılım almayınız.

AbstractView içerisinde bir çok uygulama fonksiyonuna hızlıca erişebilrsiniz. Bunlar aynı zamanda diğer BaseView’larda da kullanılır çünkü tüm BaseView’lar AbstractView’dan kalıtım almıştır.

Yapıcı Metod (constructor)

Bir view AbstractView’dan türetilecekse mutlaka ViewParameter değeri sağlanmalıdır. Parametresiz Constructor’ı bulunmamaktadır.
ViewParameter nesnesi için yeni view oluşturma başlığına bakınız.

constructor(public view: ViewParameter)

Functions

Giriş Noktası

Bir view yüklendikten ilk önce onInit metodu çağrılır. Her view’da olmak zorundadır boş bırakılabilir ama eklenmek zorundadır.

abstract onInit();

Değişen Alanların Kontrolü

Kullanıcı sayfadan çıkmadan giriş yaptığı alanlarda değişik olup olmadığını anlamak için bu fonksiyon kullanılır.
Herhangi bir içerik değiştirilmişse true diğer durumda false değer verir.

isDirty(): boolean;

Sayfa Başlığını Değiştirme

Sayfa başlığını değiştirmek için setTitle metodunu kullanılır.
Bu metod içerisine verilen string değer için kullanıcı dil paketinde karşılığı aranır. Değer atamadan önce translate yapmak gerekmez.

setTitle(title: string);

Kullanıcı Dilinde Gösterme

Culture bilgisi üzerinden verilen ifadeyi geçerli dilde göstermeyi dener. Eğer ifadenin aktif dilde bir kaşlığı yoksa olduğu gibi gösterilir.

public tryTranslate(value: string): string ;

Farklı Bir View’a Yönlendirme Yapmak

Bir View içerisinden farklı bir View’a gidebilir veya yönlendirme yapabilirsiniz. Bunun için AbstractView altında yer alan Go metodunu kullanırsınız.

go(route: string, data: any);

Çağrı listesine gitmek için index view için aşağıdaki Route(yönlendirme) yeterlidir.

this.go("modules/call/index");

servis katmanında gelen bir ürünün bilgilerini göstermek için;

var product = {...};
this.go("modules/productmanager/product/form",product);

Componenet ve View Yüklemek

Bu Metod ile bir view içerisinde istenen bölüme farklı bir view veya component yükleyebilirsiniz. Örneğin;
kullanıcının seçtiği bir Dropwdown listesinin değerine göre farklı component’ler yüklenmek istendiğinde bu metod kullanılır.

public loadView(route: string, target: string, data: any = null, instanceVariable: string = null) ;
Parametre Tip Değer
route string Component veya View’ın alınacağı route’tur. Diğer bir deyişle html/ts dosyasının yoludur. Dosya uzantısı kullanılmaz.
target string Component veya View’ın yükleneceği container
data any Component veya View yüklendiği sırada render veya bind edilmek istenen json veri nesnesi
instanceVariable string Değer verilmediğinde varsayılan olarak, View’lar için kullanılan varsayılan değişken adı olan _co değerini alır.
/**
 * this.model verisinde yer alan bilgilere göre görüntülenme modunu belirler.
 * @returns
 */

UI Mode

Arayüzler çağrılma yöntemine göre farklı durumlar alabilir. Örneğin bir kaydı güncellemek için ekran açıldığında View , Edit durumunu alır.

public getUIMode(): ViewMode

ViewMode değerleri.

enum ViewMode {
    Insert = 0,
    Edit = 1,
    Readonly = 2,
}
ViewMode Koşul
Insert this.model == null || this.model.Id == null || this.model.Id == 0
Edit this.model != null && this.model.Id > 0
Readonly this.model != null && this.model.Id > 0

UI Tags

WebApi katamanından gelen nesnede yer alan DataTypeUIInfo tipinde veriyi, UI katmanında kullanılabilecek hale (html) dönüştürür.

protected convertToUITag(data: IDataTypeUIInfo);

Field and Members

model

View’da kullanılacak olan ve View yüklenirken gönderilen JSON formatında veri nesnesidir.

public model:any;

UI Yardımcısı

Arayüzle ilgili yardımcı metodlar için hızlı erişim noktasıdır. Örneğin modal nesnesini göstermek, Yükleniyor mesajını göstermek veya gizlemek vb. Daha detaylı bilgi için LicrusUIHelper başlığına bakınız.

ui: LicrusUIHelper;

Web Api Wrapper

Web Api controllerında yer alan api fonksiyonlarına (actions) hızlıca erişmek için kullanılan yardımcı nesnedir. Daha detaylı bilgi için ApiHelper başlığına göz atın.

api: ApiHelper;

Dil ve Kültür

Web Api controllerında yer alan Api fonksiyonlarına (Actions) hızlıca erişmek için kullanılan yardımcı nesnedir. Daha detaylı bilgi için BaseCulture başlığına göz atın.

culture: BaseCulture;

Lookup ve Element Erişimcileri

View içerisinde kodla veya html içerisindeki tanımlamalarla lookupları (select/dropdown) oluşturabilirsiniz. Oluşturulan her bir Look nesnesi controlRefs dizisine eklenir. Daha detaylı bilgi için UIKit ve UIKitSelectRef başlıklarına göz atın.

controlRefs: UIKitSelectRef[];