ExtJs – Avoid Global Variable Usage

ExtJs Telah menyediakan fasilitas Getter-Setter nya sendiri, untuk itu diharapkan kita terbiasa untuk menggunakannya dan mengurangi atau bahkan menghindari penggunaan Global Variable lagi di aplikasi ExtJs yang kita develop.

Download Ebook ExtJS :&nbsp;<a href=”http://mazipanneh.com/blog/download-ebook-programming/”>http://mazipanneh.com/blog/download-ebook-programming/</a&gt;
Cara penggunaanya kurang lebih saya jelaskan seperti berikut :

Buat satu folder dibawah folder app.
Saya beri nama config dan saya buat dibawahnya file GlobalVariable.js
lihat gambar :

Code GlobalVariable.js adalah :

Ext.define('TEST.config.GlobalVariable',{
singleton : true,
config : {
isNewDashlite : true, // this is our Global Variable
dashliteObject : null, // this is our Global Variable
isNewDashboardConfig : true, // this is our Global Variable
dashboardConfigObj : null, // this is our Global Variable
},

constructor : function(config){

this.initConfig(config);
}
});

Untuk meng-include di dalam Application ExtJs anda, cukup dengan men-requires di main application anda.
Sebagai contoh saya require di Application.js

Ext.define('TEST.Application', {
extend: 'Ext.app.Application',
name: 'TEST',
// code for require GlobalVariable.js
requires : ['TEST.config.GlobalVariable'],

launch: function () {
Ext.create('Ext.container.Viewport', {
layout: 'fit',
items: [{
xtype: 'mainView'
}]
});

}
});

Untuk penggunaanya pun sangat mudah.
Sebagai contoh untuk getter sebagai berikut :

TEST.config.GlobalVariable.getIsNewDashlite(); // return boolean
TEST.config.GlobalVariable.getDashliteObject(); // return Object

Dan untuk setter-nya adalah sebagai berikut :

TEST.config.GlobalVariable.setIsNewDashlite(true);
TEST.config.GlobalVariable.getDashliteObject(new Object);

Anda bisa baca beberapa hal lain yang seharusnya dihindari dalam men-develop aplikasi ExtJs di Official Sencha Blog.

Terima kasih dan semoga bermanfaat.

mazipan-signature

Advertisements

Be a good reader, leave your comment please.

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s