2022年8月3日 星期三

Ext.syncRequire('TM.TMSingleViewEdit') 和 Ext.Loader.loadScript({ url: '../GUITemplate/TMSingleViewEdit.js', }) 的不同



Ext.Loader.loadScript({

url: '../JsFunction/V120103_JSON.js',

onLoad: function () { 
//load class & depend.class 而已,不是所有 *.js,  不可存取該 *.js 的全域變數
Ext.syncRequire('TM.TMSingleViewEdit');
}
});


Ext.Loader.loadScript({ //load *.js , 可以存取該 *.js 的全域變數
url: '../GUITemplate/TMSingleViewEdit.js',
});


Ex1:  Ext.Loader.loadScript({    url: '../../GUITemplate/TMSingleViewEdit.js',});

1>TMSingleViewEdit.js

var unique="1";

function StrExtract(par_Str, index, par_sper) {
    return ExtractStr(par_Str, index, par_sper);
}


2>V120103.js

Ext.Loader.loadScript({
    url: '../GUITemplate/TMSingleViewEdit.js',
});

Ext.onReady(function () { 
    console.log("unique=", unique);  --> 可以取得 TMSingleViewEdit.js 的全域變數 unique
     :
}

Ex2:  Ext.syncRequire('TM.TMSingleViewEdit');

2>若 V120103.js 
    Ext.syncRequire('TM.TMSingleViewEdit');
    console.log("unique=", unique);  --> 無法取得 TMSingleViewEdit.js 的全域變數 unique

沒有留言:

張貼留言